Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Sử dụng câu lệnh CASE bên trong mệnh đề IN

CASE chỉ trả về một giá trị vô hướng. Bạn có thể làm điều này thay thế. (Theo ví dụ của bạn, tôi đang giả định rằng khi @StatusID =99, giá trị StatusID của 99 không phải là một giá trị khớp.)

select *
from MyTable
where (@StatusID = 99 and StatusID in (5, 11, 13))
    or (@StatusID <> 99 and StatusID = @StatusID)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách định cấu hình tàu thành viên với cơ sở dữ liệu không phải là aspnetdb

  2. LPAD trong SQL Server 2008

  3. Làm cách nào để cập nhật giá trị thuộc tính xml trong biến xml bằng t-sql?

  4. Cách SET ROWCOUNT hoạt động trong SQL Server

  5. NOLOCK (gợi ý Máy chủ Sql) có phải là phương pháp không tốt không?