프로그래머스 문제
https://school.programmers.co.kr/learn/courses/30/lessons/62284#qna
풀이
https://school.programmers.co.kr/questions/74722
# 풀이 쿼리
SELECT DISTINCT CART_ID
FROM CART_PRODUCTS
WHERE NAME ='Yogurt'
AND CART_ID IN (
SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME = 'MILK')
ORDER BY CART_ID
조금만 생각해보면 간단한 문제다.
요거트(혹은 우유)가 담긴 장바구니의 ID 중 우유(혹은 요거트)가 담긴 장바구니의 ID를 찾으면 되는 것이다.
서브쿼리 하나만 사용하면 된다. JOIN이나 CASE WHEN 구문 등... 이런 조건들은 쓰면 괜히 가독성만 떨어지고 쿼리를 복잡하게만 한다.
어떤 문제를 풀던 중요한 건, 문제에서 요구하는게 뭔지를 정확하게 파악하는 것 같다.
'코딩테스트 > SQL - 프로그래머스' 카테고리의 다른 글
SQL 고득점 kit(String, Date) - 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 (0) | 2024.04.02 |
---|---|
연도별 대장균 크기의 편차 구하기 (0) | 2024.03.30 |
특정 조건을 만족하는 물고기별 수와 최대 길이 구하기 (0) | 2024.03.23 |
SQL 고득점 kit(JOIN) - 상품을 구매한 회원 비율 구하기 (0) | 2024.03.22 |
SQL 고득점 kit(JOIN) - 5월 식품들의 총매출 조회하기 (0) | 2024.03.20 |