[프로그래머스]SQL 쿼리테스트 Lv4(1)

2025. 8. 1. 14:03·코딩 테스트/02. SQL

1. 보호소에서 중성화한 동물

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

SELECT 
    I.ANIMAL_ID, 
    I.ANIMAL_TYPE,
    I.NAME
FROM 
    (SELECT  ANIMAL_ID, ANIMAL_TYPE, NAME, SEX_UPON_OUTCOME
    FROM ANIMAL_OUTS
    WHERE SEX_UPON_OUTCOME LIKE 'Neutered%' 
        OR SEX_UPON_OUTCOME LIKE'Spayed%') AS OUTS
        LEFT JOIN ANIMAL_INS AS I ON OUTS.ANIMAL_ID = I.ANIMAL_ID
WHERE I.SEX_UPON_INTAKE LIKE 'Intact%'
ORDER BY ANIMAL_ID;

2. 식품분류별 가장 비싼 식품의 정부 조회하기

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

SELECT CATEGORY, PRICE ,PRODUCT_NAME
FROM (
    SELECT *, 
           ROW_NUMBER() OVER (PARTITION BY CATEGORY ORDER BY PRICE DESC) AS rn
    FROM FOOD_PRODUCT
) AS sub
WHERE rn = 1 
    AND CATEGORY IN ('과자', '국', '김치', '식용유')
ORDER BY PRICE DESC;

3. 5월 식품의 총 매출 조회하기

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

WITH MAY_ORDER AS (
    SELECT PRODUCT_ID, SUM(AMOUNT) AS TOTAL_AMOUNT
    FROM FOOD_ORDER
    WHERE DATE_FORMAT(PRODUCE_DATE, '%Y-%m') = '2022-05'
    GROUP BY PRODUCT_ID)

SELECT 
    P.PRODUCT_ID, 
    P.PRODUCT_NAME, 
    P.PRICE * O.TOTAL_AMOUNT AS TOTAL_SALES
FROM FOOD_PRODUCT AS P
JOIN MAY_ORDER AS O
  ON P.PRODUCT_ID = O.PRODUCT_ID
ORDER BY TOTAL_SALES DESC, P.PRODUCT_ID ASC;

4. 취소 되지 않은 진료 예약 조회하기

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

SELECT 
    A.APNT_NO,
    P.PT_NAME,
    A.PT_NO,
    A.MCDP_CD,
    D.DR_NAME,
    A.APNT_YMD
FROM APPOINTMENT AS A
    INNER JOIN DOCTOR AS D
    ON A.MDDR_ID = D.DR_ID
    INNER JOIN PATIENT AS P
    ON A.PT_NO = P.PT_NO
WHERE DATE(A.APNT_YMD) = '2022-04-13'
    AND A.APNT_CNCL_YN ='N'
    AND A.MCDP_CD = 'CS'
ORDER BY A.APNT_YMD;

5. 저자 별 카테고리 별 매출액 집계하기

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

WITH JANUARY_SALES AS (
    SELECT  
        A.AUTHOR_ID,
        A.AUTHOR_NAME,
        B.CATEGORY,
        B.PRICE,
        S.SALES
    FROM BOOK_SALES AS S
    LEFT JOIN BOOK AS B ON S.BOOK_ID = B.BOOK_ID
    LEFT JOIN AUTHOR AS A ON B.AUTHOR_ID = A.AUTHOR_ID
    WHERE DATE_FORMAT(S.SALES_DATE,'%Y-%m') = '2022-01'
)
    
SELECT 
    AUTHOR_ID, 
    AUTHOR_NAME, 
    CATEGORY, 
    SUM(PRICE * SALES) AS TOTAL_SALES
FROM JANUARY_SALES
GROUP BY 
    CATEGORY,
    AUTHOR_ID, 
    AUTHOR_NAME
ORDER BY AUTHOR_ID ASC, CATEGORY DESC;

POINT!

WITH나 서브 쿼리 내부에서는 같은 이름의 컬럼이 2개 있을 수 없기 때문에 오류가 발생합니다.

그래서 필요한 컬럼만 지정해줘야합니다!

 

'코딩 테스트 > 02. SQL' 카테고리의 다른 글

[프로그래머스]SQL쿼리테스트 Lv4(3)  (6) 2025.08.04
[프로그래머스]SQL쿼리테스트 Lv4(2)  (2) 2025.08.03
[윈도우 함수]ROW_NUMBER()함수  (3) 2025.08.01
[프로그래머스]SQL 쿼리테스트 Lv3(3)  (6) 2025.07.30
[프로그래머스] SQL 쿼리테스트 Lv3(2)  (2) 2025.07.29
'코딩 테스트/02. SQL' 카테고리의 다른 글
  • [프로그래머스]SQL쿼리테스트 Lv4(3)
  • [프로그래머스]SQL쿼리테스트 Lv4(2)
  • [윈도우 함수]ROW_NUMBER()함수
  • [프로그래머스]SQL 쿼리테스트 Lv3(3)
Growth DA Log
Growth DA Log
Growth DA Log 님의 블로그 입니다.
  • Growth DA Log
    Growth DA Log님의 블로그
    Growth DA Log
  • 전체
    오늘
    어제
    • 분류 전체보기 (125)
      • TIS_COMPANY (6)
      • 코딩 테스트 (61)
        • 01. Python (3)
        • 02. SQL (58)
      • 데이터 분석 (53)
        • 01. BigQuery (9)
        • 02. GA4 (1)
        • 02-1. GA4를 더 잘 다루기 위한 마케팅 개.. (5)
        • 03. streamlit (5)
        • 04. Git (12)
        • 05. 데이터 엔지니어링 (3)
        • 06. 데이터 모델링 (11)
        • 07. Excel (0)
        • 08. Tableau (4)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    Reset
    git
    ROW_NUMBER
    cross_join
    streamlit
    tableaubootcamp
    쿼리테스트
    revert
    tableau
    프로그래머스
    solvesql
    SQL
    코테
    윈도우함수
    코딩테스트
    rank
    이행성
    코드잇스프린트후기
    AARRR
    DENSE_RANK
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Growth DA Log
[프로그래머스]SQL 쿼리테스트 Lv4(1)
상단으로

티스토리툴바