[SQL] 프로그래머스 : NULL / JOIN 문제

Jonie Kwon·2022년 4월 12일
0
post-custom-banner

NULL 처리하기

NULL 처리하기(1)

https://programmers.co.kr/learn/courses/30/lessons/59039

SELECT ANIMAL_ID
FROM ANIMAL_INS
WHERE NAME IS NULL	
ORDER BY 1

NULL 처리하기(2)

https://programmers.co.kr/learn/courses/30/lessons/59407

SELECT ANIMAL_ID
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
ORDER BY 1

NULL 처리하기(3)

https://programmers.co.kr/learn/courses/30/lessons/59410

SELECT ANIMAL_TYPE, 
CASE WHEN NAME IS NULL THEN 'No name'
    ELSE NAME END AS NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS

JOIN

없어진 기록

https://programmers.co.kr/learn/courses/30/lessons/59042

  • 입양일이 있는데 보호시작일이 없는 동물 추출
  • left 또는 right join을 이용하여 테이블을 합치고 없는 값이 있으면 추출
SELECT AO.ANIMAL_ID ANIMAL_ID, AO.NAME
FROM ANIMAL_INS AI
RIGHT JOIN ANIMAL_OUTS AO ON AI.ANIMAL_ID = AO.ANIMAL_ID
WHERE AI.ANIMAL_ID IS NULL

있었는데요 없었습니다

https://programmers.co.kr/learn/courses/30/lessons/59043

  • 입양일이 보호시작일 보다 빠른 데이터 추출
SELECT AO.ANIMAL_ID ANIMAL_ID, AO.NAME
FROM ANIMAL_INS AI
JOIN ANIMAL_OUTS AO ON AI.ANIMAL_ID = AO.ANIMAL_ID
WHERE AI.DATETIME > AO.DATETIME
ORDER BY AI.DATETIME

오랜 기간 보호한 동물(1)

https://programmers.co.kr/learn/courses/30/lessons/59044

  • 입양기록이 없는 동물 중 가장 오래 보호한 순으로 3마리까지 추출
SELECT AI.NAME, AI.DATETIME
FROM ANIMAL_INS AI
LEFT JOIN ANIMAL_OUTS AO ON AI.ANIMAL_ID = AO.ANIMAL_ID
WHERE AO.DATETIME IS NULL
ORDER BY DATETIME
LIMIT 3

보호소에서 중성화 한 동물

https://programmers.co.kr/learn/courses/30/lessons/59045

  • 입양 기록의 중성화 여부가 보호소에 들어올 때 중성화 여부 정보와 다른 데이터를 추출
SELECT AI.ANIMAL_ID, AI.ANIMAL_TYPE, AI.NAME
FROM ANIMAL_INS AI
JOIN ANIMAL_OUTS AO ON AI.ANIMAL_ID = AO.ANIMAL_ID
WHERE AO.SEX_UPON_OUTCOME <> AI.SEX_UPON_INTAKE
ORDER BY AI.ANIMAL_ID
profile
메모하는 습관
post-custom-banner

0개의 댓글