- COALESCE
입력한 값 중에 NULL이 아닌 값을 출력하는 함수.
A열 - B열 값 등을 구할 때 B열에 NULL이 들어가있다면 0으로 계산한다 등에 유용하다.
COALESCE (A,B,C) 일 경우 NULL값인지 앞에서부터 판단하면서 NULL이 아닌 값을 출력한다.
A가 NULL인 경우 B를, A/B가 NULL인 경우 C를 출력하는 순서이다.
SELECT item, (price-COALESCE(discount,0)) AS final
FROM table
- CAST
데이터 유형을 바꿔주는 구문
모든 데이터 유형이 모든 데이터 유형으로 바뀌진 않으며, 말이 되어야 한다.
5를 문자에서 숫자로 바꾸는 것은 가능하나, 'five'를 숫자로 바꾸지는 못한다.
문자 수를 세는 함수는 데이터 유형상 문자여야만 작동하는 등, 데이터 유형을 바꿔야 할 필요가 생길 수 있다.
SELECT CAST ('5'AS INTEGER)
SELECT CAST (date AD TIMESTAMP)
FROM table
- NULLIF
두개의 값을 넣어서 두 값이 같으면 NULL, 다르면 첫번째 값을 출력하는 함수
NULL 값으로 출력되는게 나은 이유는 NULL은 결과가 NULL로 출력되지만 계산 불가능한 값은 아예 쿼리가 오류가 나기 때문
ex. A/B를 하는데 B가 0이라면 0으로는 나눌 수 없으니 쿼리 자체가 오류가 나는데, 만약 NULLIF를 통해 B가 0인 경우 NULL 값을 출력하라고 추가해주면 결과값이 NULL 상태인채로 출력됨