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

문딤·2022년 9월 30일
0

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

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

소스 코드

GROUP_CONCAT이용 서브쿼리


SELECT CART_ID
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%'
;

서브쿼리 이용 풀이

SELECT
CART_ID
FROM
CART_PRODUCTS
WHERE CART_ID IN(SELECT
                CART_ID
                FROM
                CART_PRODUCTS
                WHERE NAME='MILK')
                AND NAME='YOGURT'
               GROUP BY CART_ID;

풀이생각

  1. CNT로 GROUP BY로 해당하는 ID가 1개가 넘는것을 찾는다 ----> 실패
  2. 서브쿼리로 조건을 만들어서 해결 ===> 성공
    3.GROUP CONCAT이란걸 처음봤는데 자주 사용할듯하다.

GROUP CONCAT

이런식으로 조회 결과물들을 이어붙이는 느낌이었다.

참고

https://fruitdev.tistory.com/16
https://blue-boy.tistory.com/194

profile
풀스택개발자가 될래요

0개의 댓글