sql >> Database >  >> RDS >> Sqlserver

Like toepassen op alle kolommen zonder alle kolomnamen op te geven?

Over het algemeen - het is niet mogelijk op een redelijke manier (zonder te graven in DB-metadata ), maar als u de namen van kolommen kent, kunt u de volgende truc gebruiken:

select 
    YourTable.*
FROM YourTable
JOIN
( 
    select 
      id, 
      ISNULL(column1,'')+ISNULL(Column2,'')+...+ISNULL(ColumnN,'') concatenated
      FROM YourTable
) T ON T.Id = YourTable.Id
where   t.concatenated like '%x%'

OF

als u naar woorden zoekt - gebruik de FTS-mogelijkheden, want de bovenste zoekopdracht is een prestatie-killer



  1. Hoe Asinh() werkt in PostgreSQL

  2. Berekening uitvoeren in standaard MySQL-waarde

  3. Hoe kan ik twee tabellen samenvoegen met een verschillend aantal rijen in MySQL?

  4. Rails &MSSQL 2008 - Zullen we barrières raken?