Sparta_coding_club/SQL 코드카타
SQL 코드카타 - 서브쿼리 활용 (우유와 요거트가 담긴 장바구니)
데이터분석쇼니
2023. 12. 29. 08:30
SQL 코드카타
진행과정
하나의 문제를 다양하게 풀이하는 방법이 있다는 것을 알았다.
우선은 스스로 접근할 수 있는 쉬운 방법으로 하고, 다른 방법 중 내 수준에서 이해가 가능한 것들도 함께 정리를 하기로 했다.
문제 다시보기
우유와 요거트가 담긴 장바구니
○ 풀이방법 1.
- 같은 표에서 MILK가 담긴 CART_ID, YOGURT가 담긴 CART_ID를 각각 추출한 후
- 왼쪽과 오른쪽 표의 공통된 CART_ID 를 추출
더보기
SELECT A.CART_ID
FROM CART_PRODUCTS A
INNER JOIN CART_PRODUCTS B
ON A.CART_ID = B.CART_ID
WHERE A.NAME LIKE 'YOGURT' AND B.NAME LIKE 'MILK'
ORDER BY 1
○ 풀이방법 2.
- 하나의 표에서 MILK와 YOGURT 데이터만 남긴 후 (서브쿼리)
- 각 데이터의 CART_ID 갯수를 세서 2개 이상인 것만 추출
더보기
SELECT CART_ID
FROM
(
SELECT CART_ID, NAME
FROM CART_PRODUCTS
WHERE NAME LIKE 'MILK' OR NAME LIKE 'YOGURT'
GROUP BY CART_ID, NAME
) A
GROUP BY CART_ID
HAVING COUNT(CART_ID) >= 2
ORDER BY CAR_ID