[프로그래머스] 우유와 요거트가 담긴 장바구니

2024. 9. 19. 14:32·알고리즘/SQL

 

Question

 

데이터 분석 팀에서는 우유(Milk)와 요거트(Yogurt)를 동시에 구입한 장바구니가 있는지 알아보려 합니다. 우유와 요거트를 동시에 구입한 장바구니의 아이디를 조회하는 SQL 문을 작성해주세요. 이때 결과는 장바구니의 아이디 순으로 나와야 합니다.

 

 

Pseudocode

 

 

  1. WHERE 절에서 필터링:
    • cart_products 테이블에서 name이 'Milk' 또는 'Yogurt'인 상품이 있는 장바구니만 선택합니다.
  2. GROUP BY cart_id:
    • 각 장바구니(cart_id)별로 그룹화합니다. 즉, 각 장바구니에 속한 상품들을 그룹으로 묶습니다.
  3. HAVING Count(DISTINCT( name )) = 2:
    • 그룹화된 장바구니 중에서 'Milk'와 'Yogurt' 두 종류의 상품이 모두 있는 장바구니만 선택합니다.
    • DISTINCT를 사용하여 동일한 상품이 여러 번 포함된 경우에도 한 번만 카운팅합니다.
  4. ORDER BY 1:
    • 장바구니 ID(cart_id)를 기준으로 오름차순으로 정렬합니다.

 

 

 

Code

 

SELECT cart_id
FROM   cart_products
WHERE  name = 'Milk'
        OR name = 'Yogurt'
GROUP  BY cart_id
HAVING Count(DISTINCT( name )) = 2
ORDER  BY 1

'알고리즘 > SQL' 카테고리의 다른 글

[프로그래머스] 주문량이 많은 아이스크림들 조회하기  (0) 2024.09.19
[프로그래머스] 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기  (0) 2024.09.19
[프로그래머스] 헤비 유저가 소유한 장소  (0) 2024.09.19
[프로그래머스] 저자 별 카테고리 별 매출액 집계하기  (0) 2024.09.19
[프로그래머스] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기  (0) 2024.09.19
'알고리즘/SQL' 카테고리의 다른 글
  • [프로그래머스] 주문량이 많은 아이스크림들 조회하기
  • [프로그래머스] 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기
  • [프로그래머스] 헤비 유저가 소유한 장소
  • [프로그래머스] 저자 별 카테고리 별 매출액 집계하기
Noaahhh
Noaahhh
  • Noaahhh
    노아
    Noaahhh
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 프로젝트 (4)
      • 알고리즘 (113)
        • SQL (108)
        • CP (5)
      • 자격증 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    코딩테스트
    contest397
    spingboot
    JWT
    SQL
    프로그래밍대회
    프로그래머스
    querydsl
    cp초보
    Spring
    SQL문제
    atcoder beginner contest
    cp
    어린 동물 찾기
    아픈 동물 찾기
    JPQL
    abc421
    PCSQL
    경쟁적프로그래밍
    atcoder
    pasql
    PS
    카카오로그인
    인증/인가
    소셜로그인
    집계함수
    ABC
    contest395
    OAuth2.0
    springboot
  • hELLO· Designed By정상우.v4.10.5
Noaahhh
[프로그래머스] 우유와 요거트가 담긴 장바구니
상단으로

티스토리툴바