자두의 데브로그

[MySQL] 프로그래머스 12세 이하인 여자 환자 목록 출력하기 본문

코딩테스트/SQL

[MySQL] 프로그래머스 12세 이하인 여자 환자 목록 출력하기

왕자두 2024. 10. 10. 01:34

https://school.programmers.co.kr/learn/courses/30/lessons/132201#

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

NULL에 대해서 특정 문자열이나 어떤 값을 넣고 싶을 때 사용하는 함수가 뭔지 모르겠어서 찾아보다가 기록하기로!

SELECT COALESCE(column_name, 'None') AS column_name
FROM table_name;

 

이 함수를 통해서 NULL인 경우에 대해서 None으로 해당 값을 넣을 수 있다. 근데 여기서 추가로 공백 문자인 경우에 대해서도 처리하고 싶다면

SELECT COALESCE(NULLIF(column_name, ''), 'None') AS column_name
FROM table_name;

 

 

빈 문자열인 경우에 대해서 NULL로 반환하고 그렇지 않으면 원래 값을 반환한다. NULL 값에 대해서 None으로 처리하는 함수가 COALESCE로 선언되어있으니 그대로 사용하면 된다.

 

-- 코드를 입력하세요
SELECT PT_NAME, PT_NO, GEND_CD, AGE, COALESCE(TLNO, 'NONE') AS TLNO
FROM PATIENT
WHERE AGE <= 12 and GEND_CD = 'W'
ORDER BY AGE desc, PT_NAME;