2022. 3. 20. 02:19ㆍSite/SQL ZOO
NULL을 비교할때에는 =, <, >를 통해 연산을 할수없고 IS NULL을 사용해야합니다
-> NULL의 비교연산을 통해 TRUE, FALSE가 될수없고 제 3인 값인 UNKNOWN으로 간주됨
ex)
NULL IS NULL = TRUE / NULL IS NOT NULL = FALSE / 3 IS NULL = FALSE / 3 IS NOT NULL = TRUE
3 = NULL -> UNKNOWN / 3 != NULL -> UNKNOWN / NULL = NULL -> UNKOWN
cf)
NULL의 특징
- 기본적인 의미 = UNKNOWN [0과 다름]
- NULL과 관련된 연산은 모두 NULL값으로 출력됨
- SELECET절에서 NULL비교연산시 -> UNKNOWN -> 오류발생 / WHERE절에서 NULL비교연산시 UNKNOWN -> FALSE반환
INNER JOIN
정확한 결과를 출력하기위해 2개의 테이블의 교집합을 출력
CROSS JOIN에서 조인조건절이 만족된 행들만 남긴 조인
-> NULL값 포함[x]
LEFT JOIN
2개에 table에서중 왼쪽 table에 기준 -> 오른쪽 table에 매칭되는 레코드가 없을시 NULL표시
RIGHT JOIN
2개에 table에서중 오른쪽 table에 기준 -> 왼쪽 table에 매칭되는 레코드가 없을시 NULL표시
COALESCE = NULL값을 원하는 값으로 대체할수있습니다
첫번째 인자 mobile에 NULL값이 있으면 두번째인자 07986 444 2266로 변경해줍니다
ex)
COALESCE(x,y,z) = x if x is not NULL
COALESCE(x,y,z) = y if x is NULL and y is not NULL
COALESCE(x,y,z) = z if x and y are NULL but z is not NULL
COALESCE(x,y,z) = NULL if x and y and z are all NULL
reference check : https://sqlzoo.net/wiki/COALESCE
'Site > SQL ZOO' 카테고리의 다른 글
SQL ZOO[MySQL]Self join (0) | 2022.03.29 |
---|---|
SQL ZOO[MySQL]Using Null Quiz (0) | 2022.03.20 |
SQL ZOO[MySQL]JOIN Quiz 2 (0) | 2022.03.15 |
SQL ZOO[MySQL]More JOIN operations (0) | 2022.03.15 |
SQL ZOO[MySQL] JOIN Quiz (0) | 2022.03.11 |