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

SQL Server - sử dụng CASE trong mệnh đề WHERE

Trong trường hợp của bạn, bạn chỉ cần HOẶC

WHERE
    (
    acting_to is null 
    OR 
        (
        datediff(day, acting_from, acting_to) >= 90
        AND
        acting_to >= '2010-10-01'
        )
    )

Một trường hợp dành cho giá trị , không phải điều kiện. Điều kiện nằm ngoài biểu thức CASE

ví dụ:

CASE
    WHEN SomeCol = 'a' THEN ColA
    WHEN SomeCol = 'c' THEN ColC
    ELSE ColB
END > 42



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tạo DSN theo chương trình?

  2. Các giá trị varchar được lưu trữ trong cơ sở dữ liệu SQL Server như thế nào?

  3. Loại bỏ các dấu cách theo dõi và cập nhật trong các cột trong SQL Server

  4. Thay thế nhiều ký tự trong SQL

  5. Cách tốt nhất để lưu trữ thời gian (hh:mm) trong cơ sở dữ liệu