Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Terapkan suka di semua kolom tanpa menentukan semua nama kolom?

Secara umum - ini tidak mungkin dengan cara yang wajar (tanpa menggali metadata DB ), tetapi jika Anda mengetahui nama-nama kolom, Anda dapat menggunakan trik seperti ini:

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%'

ATAU

jika Anda mencari kata - gunakan kemampuan FTS, karena kueri atas adalah pembunuh kinerja



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat memotong tabel karena direferensikan oleh batasan FOREIGN KEY?

  2. Aktifkan Agen SQL Server melalui SSMS

  3. Nilai kolom pivot dinamis MSSQL ke header kolom

  4. SET versus SELECT saat menetapkan variabel?

  5. Kunci utama SQL dapat menerima '0'?