본문 바로가기

내배캠/TIL

SQL - 우유와 요거트가 담긴 장바구니

https://school.programmers.co.kr/learn/courses/30/lessons/62284

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

답 1

SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME IN ('Milk','Yogurt')
GROUP BY CART_ID
HAVING COUNT(DISTINCT NAME)=2

 

 

답 2

SELECT CART_ID, NAMES
FROM (
    SELECT CART_ID, GROUP_CONCAT(NAME) AS NAMES
    FROM CART_PRODUCTS
    GROUP BY CART_ID
) TMP
WHERE NAMES LIKE '%Milk%' 
    AND NAMES LIKE '%Yogurt%'

 

 

답 3

SELECT DISTINCT A.CART_ID
FROM CART_PRODUCTS A
INNER JOIN CART_PRODUCTS B
    ON A.CART_ID = B.CART_ID
WHERE A.NAME = 'Milk' AND B.NAME = 'Yogurt'
ORDER BY 1;

 

 

답 4

SELECT CART_ID
FROM CART_PRODUCTS
WHERE CART_ID IN ( SELECT CART_ID
                   FROM CART_PRODUCTS
                   WHERE NAME = 'Milk')
      	AND NAME = 'Yogurt'
ORDER BY CART_ID ASC;

 

'내배캠 > TIL' 카테고리의 다른 글

타임리프(Thymeleaf) 란?  (0) 2024.08.27
세션 vs 쿠키 vs 캐시  (0) 2024.08.26
Git 커밋 메시지를 수정하고 싶을 때  (0) 2024.08.21
MVC 패턴  (0) 2024.08.20
클린 코드  (0) 2024.08.19