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

COALESCE dalam klausa Where?

@Blorgbeard answer (menggunakan top 1 dan order by) mungkin adalah cara terbaik tetapi hanya untuk berbeda Anda juga bisa menggunakan sub-query dan tidak ada:

SELECT name FROM names 
WHERE (colA = @colA) OR (colA = 'ALL' AND NOT EXISTS(
                                                SELECT name FROM names 
                                                WHERE colA = @colA)) 

Saya kira "keuntungan" dari ini adalah menggunakan sql yang lebih standar.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mengotomatiskan kueri SQL untuk dijalankan setiap bulan

  2. Cara menggunakan Template di SQL Server Management Studio (SSMS) - Tutorial SQL Server / TSQL Bagian 16

  3. Bagaimana Cara Menggunakan UTF-8 Collation dalam database SQL Server?

  4. Perbaiki Msg 529 "Konversi eksplisit dari tipe data int ke xml tidak diizinkan" di SQL Server

  5. Cara mendapatkan *semuanya* kembali dari prosedur tersimpan menggunakan JDBC