SQL/AWS Redshift

Redshift AWS DB SQL Boolean

sailorCat 2022. 2. 27. 23:10
728x90

Boolean 값에서 항상 True False 값만 있는 것이 아니라

Null값도 존재할 수 있다.

 

Flag is True = Flag is not False 

만약 Flag에 Null 값이 없고 오직 True, False로만 이루어져 있다면 이 식이 맞지만

Null값이 존재할 경우 not False가 반드시 True라고 할 수 없다.

 

 

 

 

flag가 식에 해당되면 1을 더하는 문장을 실행한다.

CASE WHEN flag = True THEN 1 END 

여기에 COUNT() true_cnt1으로 출력한다.

 

 

 

 

NULL의 비교와 연산은 항상 IS, IS NOT으로 수행한다.

만약에 =, !=, <>로 수행하면 잘못된 결과가 나온다.

 

728x90