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

Tiga kondisi pada satu kolom tabel

Mungkin saya salah memahami persyaratan Anda, bukankah semudah itu?

-- 1.) If User want all rows 
SELECT * FROM @tbl 

-- 2.) If user want rows where ID is NULL
SELECT * FROM @tbl 
WHERE ID IS NULL

-- 3.) If user want rows where ID is NOT NULL
SELECT * FROM @tbl 
WHERE ID IS NOT NULL 

Sunting :Jadi Anda ingin menggunakan parameter untuk memfilternya, lihat:

SELECT * FROM @tbl 
WHERE   @FilterID = 1                      -- returns all rows
OR    ( @FilterID = 2 AND ID IS NULL)      -- returns all null-rows
OR    ( @FilterID = 3 AND ID IS NOT NULL)  -- returns all not null rows

Anda juga dapat menggunakan CASE di mana klausa, meskipun tidak disarankan .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jika tidak ada gagal pada SQL CE

  2. Cara Mengurangi Ukuran File Data di SQL Server (T-SQL)

  3. Membuat Model Kerangka Entitas menjangkau banyak basis data

  4. Menginstal sampel database AdventureWorks di Microsoft SQL Server 2012

  5. SQL untuk mendapatkan data bulan sebelumnya