Coding Test/프로그래머스 SQL
프로그래머스 SQL 문제_IS NULL
뉴욕킴
2023. 10. 22. 15:46
IS NULL
1) 이름이 있는 동물의 아이디
- 동물 보호소에 들어온 동물 중, 이름이 있는 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다
SELECT ANIMAL_ID
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
ORDER BY ANIMAL_ID
- IS NOT NULL: NULL값이 아닌 것들만 끌고오기
2) 경기도에 위치한 식품창고 목록 출력하기
- FOOD_WAREHOUSE 테이블에서 경기도에 위치한 창고의 ID, 이름, 주소, 냉동시설 여부를 조회하는 SQL문을 작성해주세요. 이때 냉동시설 여부가 NULL인 경우, 'N'으로 출력시켜 주시고 결과는 창고 ID를 기준으로 오름차순 정렬해주세요
SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, COALESCE(FREEZER_YN, 'N') AS FREEZER_YN
FROM FOOD_WAREHOUSE
WHERE ADDRESS like '경기%'
ORDER BY WAREHOUSE_ID
- COALESCE(FREEZER_YN, 'N') AS FREEZER_YN → 냉동시설 여부가 NULL이면 N으로 출력
- ADDRESS like '경기%' : 주소 중 '경기'라는 단어가 들어있는 것 추출
3) 이름이 없는 동물의 아이디
- 동물 보호소에 들어온 동물 중, 이름이 없는 채로 들어온 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다
SELECT ANIMAL_ID
FROM ANIMAL_INS
WHERE NAME IS NULL
ORDER BY ANIMAL_ID
4) NULL 처리하기
- 입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 "No name"으로 표시해 주세요
SELECT ANIMAL_TYPE, COALESCE(NAME, 'No name') AS NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
- No name으로 설정 시 문자열은 ' ' 을 꼭 써줘야 됨 → 'No name'
5) 나이 정보가 없는 회원 수 구하기
- USER_INFO 테이블에서 나이 정보가 없는 회원이 몇 명인지 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 USERS로 지정해주세요
SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE AGE IS NULL;
- 행의 수 카운트: COUNT(*)