Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server - използване на CASE в клаузата WHERE

Във вашия случай ви трябва само ИЛИ

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

Регистър е за стойности , а не условия. Условието е извън израза CASE

напр.

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. Как да зададете първичен ключ при свързване с CreateTableDef

  2. Грешка в SQL Server Неявно преобразуване на, тъй като съпоставянето на стойността не е разрешено поради конфликт на съпоставяне.

  3. месеца между две дати в sql сървър с начална и крайна дата на всяка от тях в sql сървър

  4. Как да копирате огромни данни от таблица в друга таблица в SQL Server

  5. SQL Server 2016:Подобрения на групата за наличност