IFNULL
MySQL에서 IF 함수를 사용하여 특정 컬럼이 NULL인 경우를 처리할 수 있다.
ex1) phone_number 컬럼이 NULL이면 'NONE'으로 출력하는 경우를 다음과 같이 처리할 수 있다
SELECT IFNULL(phone_number, 'NONE') AS phone_number
FROM your_table;
ex2) 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다.
SELECT COUNT(DISTINCT NAME) AS count
FROM ANIMAL_INS
WHERE NAME IS NOT NULL;
LIMIT
조회할 데이터 갯수 제한
ex1) 동물 보호소에 가장 먼저 들어온 동물의 이름을 조회하는 SQL 문을 작성해주세요.
SELECT NAME
FROM ANIMAL_INS
ORDER BY DATETIME
LIMIT 1
DATE_FORMAT()
날짜 포멧팅
ex1) MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요.
SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE DATE_FORMAT(DATE_OF_BIRTH, '%m') = '03' AND GENDER = 'W' AND TLNO IS NOT NULL
ORDER BY MEMBER_ID;
%Y | Year as a numeric, 4-digit value |
%y | Year as a numeric, 2-digit value |
%M | Month name in full (January to December) |
%m | Month name as a numeric value (00 to 12) |
%D | Day of the month as a numeric value, followed by suffix (1st, 2nd, 3rd, ...) |
%d | Day of the month as a numeric value (01 to 31) |
YEAR() / MONTH() / DAY()
SELECT YEAR("2017-06-15") AS print;
SELECT MONTH("2017-06-15") AS print;
SELECT DAY("2017-06-15") AS print;
2017 6 15 |
728x90
반응형
'MySQL' 카테고리의 다른 글
TIMESTAMPDIFF() 사용하기 (0) | 2024.04.07 |
---|---|
날짜 관련 함수 정리 (0) | 2024.04.04 |
LIKE 연산자 (0) | 2024.03.05 |
UNION / UNION ALL (0) | 2024.03.04 |
[SQL] JOIN 정리 (0) | 2024.01.10 |