제어 흐름 함수

선봉·2023년 2월 17일
0

MySQL

목록 보기
10/36

IF(수식, 참, 거짓)

수식이 참이면 참, 아니면 거짓을 반환한다.

SELECT IF (1 > 10, '참', '거짓'); -- 결과는 거짓 일것이다.

IFNULL(수식1, 수식2)

수식 1이 NULL이면 수식2를 반환하고, 아니면 수식1이 그대로 반환된다.

SELECT IFNULL(NULL,'널이다.');					-- 널이다.
SELECT IFNULL('널이 아님','수식1이 반환된다.');	-- 널이 아님

NULLIF(수식1, 수식2)

수식1과 2가 같으면 NULL을 반환하고 아니면 수식1을 반환한다.

SELECT NULLIF(1,1); -- NULL
SELECT NULLIF(1,0); -- 1
SELECT NULLIF('Hi','A'); -- Hi
SELECT NULLIF('Hi',0);	-- NULL 이경우는 서로 다른데 문자와 숫자를 비교할때 문자를 0으로 봐서 NULL이 나온듯 하다.

CASE ~ WHEN ~ ELSE ~ END

CASE는 내장 함수가 아닌 연산자이다.

SELECT CASE 11 -- CASE뒤에 오는 숫자로 비교하는데 이경우 11을 입력해서 뭐죠?가 반환된다.
	WHEN 1 THEN '하나'
    WHEN 5 THEN '다섯'
    WHEN 10 THEN '열'
    ELSE '뭐죠?'
END AS 'CASE실습';

이거 컴활 1급 실기에서 많이 사용했던 CASE문과 비슷해서 참 친숙하다.

역시 뭐든 배워두면 통하는구나

profile
백엔드 개발자

0개의 댓글

관련 채용 정보