https://school.programmers.co.kr/learn/courses/30/lessons/59411
오랜 기간 보호한 동물(2)
- 입양을 간 동물 중, 보호 기간이 가장 길었던 동물 두 마리의 아이디와 이름을 조회
- 보호 기간이 긴 순으로 조회
SELECT I.ANIMAL_ID, I.NAME
FROM ANIMAL_INS AS I RIGHT OUTER JOIN ANIMAL_OUTS AS O
USING(ANIMAL_ID)
ORDER BY DATEDIFF(O.DATETIME, I.DATETIME) DESC
LIMIT 2;
https://school.programmers.co.kr/learn/courses/30/lessons/131533
상품 별 오프라인 매출 구하기
- 상품코드 별 매출액(판매가 * 판매량) 합계를 출력
- 매출액을 기준으로 내림차순 정렬, 매출액이 같다면 상품코드를 기준으로 오름차순 정렬
SELECT P.PRODUCT_CODE, (P.PRICE * SUM(S.SALES_AMOUNT)) AS SALES
FROM PRODUCT P JOIN OFFLINE_SALE S
USING(PRODUCT_ID)
GROUP BY P.PRODUCT_ID
ORDER BY SALES DESC, PRODUCT_CODE
https://school.programmers.co.kr/learn/courses/30/lessons/59045
보호소에서 중성화한 동물
- 보호소에 들어올 당시에는 중성화되지 않았지만, 보호소를 나갈 때는 중성화된 동물의 아이디와 생물 종, 이름을 조회
- 아이디 순으로 조회
SELECT
I.ANIMAL_ID,
I.ANIMAL_TYPE,
I.NAME
FROM ANIMAL_INS AS I RIGHT OUTER JOIN ANIMAL_OUTS AS O
USING (ANIMAL_ID)
WHERE I.SEX_UPON_INTAKE LIKE 'Intact%' AND O.SEX_UPON_OUTCOME NOT LIKE 'Intact%'
ORDER BY I.ANIMAL_ID
https://school.programmers.co.kr/learn/courses/30/lessons/144854
조건에 맞는 도서와 저자 리스트 출력하기
- '경제' 카테고리에 속하는 도서들의 도서 ID, 저자명, 출판일을 조회
- 출판일을 기준으로 오름차순 정렬
SELECT B.BOOK_ID, A.AUTHOR_NAME, DATE_FORMAT(B.PUBLISHED_DATE,'%Y-%m-%d') AS DATE
FROM AUTHOR A JOIN BOOK B USING(AUTHOR_ID)
WHERE B.CATEGORY = '경제'
ORDER BY B.PUBLISHED_DATE;
https://school.programmers.co.kr/learn/courses/30/lessons/132201
루시와 엘라 찾기
- 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물의 아이디와 이름, 성별 및 중성화 여부를 조회
SELECT
ANIMAL_ID,
NAME,
SEX_UPON_INTAKE
FROM ANIMAL_INS
WHERE
NAME = 'Lucy'
OR NAME = 'Ella'
OR NAME = 'Pickle'
OR NAME = 'Rogan'
OR NAME = 'Sabrina'
OR NAME = 'Mitty'
ORDER BY ANIMAL_ID;
https://school.programmers.co.kr/learn/courses/30/lessons/144855
카테고리 별 도서 판매량 집계하기
- 2022년 1월의 카테고리 별 도서 판매량을 합산하고, 카테고리, 총 판매량 리스트를 출력
- 카테고리명을 기준으로 오름차순 정렬
SELECT CATEGORY, SUM(SALES)
FROM BOOK B JOIN BOOK_SALES S
USING (BOOK_ID)
WHERE DATE_FORMAT(SALES_DATE, '%m') = 1
GROUP BY CATEGORY
ORDER BY CATEGORY
https://school.programmers.co.kr/learn/courses/30/lessons/131113
조건별로 분류하여 주문상태 출력하기
- 5월 1일을 기준으로 주문 ID, 제품 ID, 출고일자, 출고여부를 조회
- 출고여부는 5월 1일까지 출고완료 / 이 후 날짜는 출고 대기 / 미정이면 출고미정
- 주문 ID를 기준으로 오름차순 정렬
SELECT ORDER_ID, PRODUCT_ID, DATE_FORMAT(OUT_DATE, '%Y-%m-%d'),
CASE WHEN OUT_DATE IS NULL THEN '출고미정'
WHEN OUT_DATE <= '2022-05-01' THEN '출고완료'
ELSE '출고대기'
END AS '출고여부'
FROM FOOD_ORDER
ORDER BY ORDER_ID
https://school.programmers.co.kr/learn/courses/30/lessons/133026
성분으로 구분한 아이스크림 총 주문량
- 아이스크림 성분 타입과 성분 타입에 대한 아이스크림의 총주문량을 총주문량이 작은 순서대로 조회
SELECT INGREDIENT_TYPE, SUM(TOTAL_ORDER) AS TOTAL_ORDER
FROM FIRST_HALF H JOIN ICECREAM_INFO I
USING (FLAVOR)
GROUP BY INGREDIENT_TYPE
ORDER BY TOTAL_ORDER
'SQL' 카테고리의 다른 글
[SQL] PROGRAMMERS SQL - 8 (0) | 2023.07.31 |
---|---|
[SQL] PROGRAMMERS SQL - 7 (0) | 2023.07.30 |
[SQL] 문법 정리 (0) | 2023.07.28 |
[SQL] PROGRAMMERS SQL - 5 (0) | 2023.07.28 |
[SQL] PROGRAMMERS SQL - 4 (0) | 2023.07.27 |