https://school.programmers.co.kr/learn/courses/30/lessons/273712
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- IN 사용
SELECT ITEM_ID
, ITEM_NAME
, RARITY
FROM ITEM_INFO
NATURAL JOIN ITEM_TREE
WHERE ITEM_ID NOT IN (SELECT PARENT_ITEM_ID
FROM ITEM_TREE)
ORDER BY ITEM_ID DES
NULL 값은 정해지지 않은 불확실한 값이기 때문에 IN 구문으로의 정확한 처리가 불가능하다.
따라서 NULL 값이 있는 경우, IN 구문 사용은 피해야 한다.
- ITEM_ID가 다른 아이템의 PARENT_ITEM_ID에 나타나지 않는 아이템 찾기
SELECT I.ITEM_ID
, ITEM_NAME
, RARITY
FROM ITEM_INFO AS I
LEFT JOIN ITEM_TREE AS T
ON I.ITEM_ID = T.PARENT_ITEM_ID
WHERE T.PARENT_ITEM_ID IS NULL
ORDER BY I.ITEM_ID DESC
ITEM_ID와 PARENT_ITEM_ID가 같도록 조인하고, PARENT_ITEM_ID가 NULL인 경우를 필터링
'SQL' 카테고리의 다른 글
[SQL] SQL을 활용한 이커머스 고객 세분화 분석 (RFM 분석) (0) | 2025.02.09 |
---|---|
[MYSQL] INTERSECT (교집합) (0) | 2024.08.07 |
[MYSQL] MAX 주의사항 (0) | 2024.08.07 |
[MYSQL] UNION, DATE_FORMAT (0) | 2024.08.04 |
[MYSQL] WITH, JOIN, CASE, 집계 함수 (0) | 2024.08.04 |