날짜에 대한 Where 절에서 케이스 사용

StayPuft

현재 WHERE다음 매개 변수를 포함하는 절이 있습니다.

WHERE 
    Project ID=110
    AND ((CAST(saa.Date AS DATE) >= '09/24/2014' AND CAST(saa.Date AS DATE) <= '09/24/2014') OR saa.Date IS NULL))

여기서 까다로운 부분은 saa.Date is NULL섹션이 Null모든 날짜의 모든 을 가져올 것이라는 것 입니다 (과도 함). Null값에 대해 다음 날짜 범위 만 사용하고 싶습니다.

(
        (CAST(sa.StartDateTime AS DATE) >= '09/24/2014' AND CAST(sa.StartDateTime AS DATE) <= '09/24/2014')
        OR
        (CAST(sa.EndDateTime AS DATE) >= '09/24/2014' AND CAST(sa.EndDateTime AS DATE) <= '09/24/2014')
)

그래서 CASEIF saa.Date is NULL Then [Use Date Range Parameters above]와 같이 작동 하는 문을 어떻게 만들 수 있는지 알아 보려고합니다 .

Horaciux

@AHiggins의 답변을 기반으로하지만 성능과 가독성을 추가합니다.

- sergability

-회피 cast

- 사용between

WHERE 
    ProjectID=110 AND 
     (
      (
        saa.Date between '09/24/2014 00:00:00.000' AND '09/24/2014 23:59:59.999'
      ) OR 
      (
        saa.Date IS NULL AND
         (
            sa.StartDateTime between '09/24/2014 00:00:00.000' AND  '09/24/2014 23:59:59.999'
         ) OR
         (
            sa.EndDateTime between  '09/24/2014 00:00:00.000' AND '09/24/2014 23:59:59.999'
         )
      )
     )     

날짜 열에 인덱스가 있는지 확인하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

where 절에서 날짜 사용, MYSQLI

분류에서Dev

SQl Server-Where 절은 데이터에서 최대 날짜를 사용합니다.

분류에서Dev

Impala에서 작동하지 않는 날짜에 대한 절 사이

분류에서Dev

where 절에서 하위 쿼리를 사용하여 테이블에서 두 번째로 높은 날짜 선택

분류에서Dev

제목에 대한 데이터에서 사용 가능한 최대 날짜

분류에서Dev

Where 절에서 사용할 날짜 ID 받기 (SQL Server)

분류에서Dev

WHERE 절에서 날짜 범위를 사용하는 방법

분류에서Dev

특정 날짜 사이의 월 현명한 날짜에 대한 SQL 쿼리 (시작 날짜와 종료 날짜)

분류에서Dev

where 클래스에서 날짜 범위 사용

분류에서Dev

동적 프로 시저에서 Where 절에 대한 올바른 이스케이프

분류에서Dev

Check에서 where 절 사용

분류에서Dev

WHERE 절에서 NOT LIKE 사용

분류에서Dev

WHERE 절에서 NULL 사용

분류에서Dev

MySQL에 where 절에 대한 select 절의 결과 사용

분류에서Dev

MySQL에 where 절에 대한 select 절의 결과 사용

분류에서Dev

케이스에서 사용할 때 날짜별로 그룹화

분류에서Dev

where 절에서-(대시)를 사용한 간단한 선택 문제

분류에서Dev

단일 케이스에 실패한 두 날짜 사이의 날짜 계산 (python, Udacity)

분류에서Dev

PHP / MySQL은 WHERE / AND 절에서 최대 날짜를 얻습니다.

분류에서Dev

스핑크스에서 날짜 사이를 사용하여 where 절을 어떻게 쿼리 할 수 있습니까?

분류에서Dev

행이없는 두 날짜 MySQL 사이의 모든 날짜에 대한 행 수

분류에서Dev

WHERE 절에서 CONVERT ()를 사용하여 varchar를 날짜로 변환

분류에서Dev

WHERE 절에 대한 JOIN을 사용한 SQL UPDATE

분류에서Dev

Oracle SQL where 절이 일부 날짜에 대해 작동하지 않습니다.

분류에서Dev

자바 스크립트에서 날짜에 타임 스탬프 값 사용에 대한주의 사항

분류에서Dev

두 열 사이의 빼기에 대한 WHERE 절 MySQL

분류에서Dev

데이터베이스에서 사용 가능한 날짜로 SQL 날짜 그룹화

분류에서Dev

Angular Material Datepicker : 빈 날짜에 대한 사용자 정의 필드 텍스트

분류에서Dev

다른 열 이름에 대한 WHERE 절

Related 관련 기사

  1. 1

    where 절에서 날짜 사용, MYSQLI

  2. 2

    SQl Server-Where 절은 데이터에서 최대 날짜를 사용합니다.

  3. 3

    Impala에서 작동하지 않는 날짜에 대한 절 사이

  4. 4

    where 절에서 하위 쿼리를 사용하여 테이블에서 두 번째로 높은 날짜 선택

  5. 5

    제목에 대한 데이터에서 사용 가능한 최대 날짜

  6. 6

    Where 절에서 사용할 날짜 ID 받기 (SQL Server)

  7. 7

    WHERE 절에서 날짜 범위를 사용하는 방법

  8. 8

    특정 날짜 사이의 월 현명한 날짜에 대한 SQL 쿼리 (시작 날짜와 종료 날짜)

  9. 9

    where 클래스에서 날짜 범위 사용

  10. 10

    동적 프로 시저에서 Where 절에 대한 올바른 이스케이프

  11. 11

    Check에서 where 절 사용

  12. 12

    WHERE 절에서 NOT LIKE 사용

  13. 13

    WHERE 절에서 NULL 사용

  14. 14

    MySQL에 where 절에 대한 select 절의 결과 사용

  15. 15

    MySQL에 where 절에 대한 select 절의 결과 사용

  16. 16

    케이스에서 사용할 때 날짜별로 그룹화

  17. 17

    where 절에서-(대시)를 사용한 간단한 선택 문제

  18. 18

    단일 케이스에 실패한 두 날짜 사이의 날짜 계산 (python, Udacity)

  19. 19

    PHP / MySQL은 WHERE / AND 절에서 최대 날짜를 얻습니다.

  20. 20

    스핑크스에서 날짜 사이를 사용하여 where 절을 어떻게 쿼리 할 수 있습니까?

  21. 21

    행이없는 두 날짜 MySQL 사이의 모든 날짜에 대한 행 수

  22. 22

    WHERE 절에서 CONVERT ()를 사용하여 varchar를 날짜로 변환

  23. 23

    WHERE 절에 대한 JOIN을 사용한 SQL UPDATE

  24. 24

    Oracle SQL where 절이 일부 날짜에 대해 작동하지 않습니다.

  25. 25

    자바 스크립트에서 날짜에 타임 스탬프 값 사용에 대한주의 사항

  26. 26

    두 열 사이의 빼기에 대한 WHERE 절 MySQL

  27. 27

    데이터베이스에서 사용 가능한 날짜로 SQL 날짜 그룹화

  28. 28

    Angular Material Datepicker : 빈 날짜에 대한 사용자 정의 필드 텍스트

  29. 29

    다른 열 이름에 대한 WHERE 절

뜨겁다태그

보관