
본 캠프 8일차!
[TODAY'S SQL 코드카타]
1) 첫 번째 문제는 'DATETIME에서 DATE로 형 변환'
Q. ANIMAL_INS 테이블에 등록된 모든 레코드에 대해, 각 동물의 아이디와 이름, 들어온 날짜1를 조회하는 SQL문을 작성해주세요. 이때 결과는 아이디 순으로 조회해야 합니다.
👉조회 시 보여야 하는 데이터 : 각 동물의 아이디, 이름, 들어온 날짜
✔️테이블명 : ANIMAL_INS
✔️조건 : ANIMAL_ID로 정렬(ORDER ~ BY ASC)
SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME,'%Y-%m-%d')
from ANIMAL_INS
order by ANIMAL_ID;
2) 두번째 문제는 ' 동명 동물 수 찾기'
Q. 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요.
👉조회 시 보여야 하는 데이터 : 동물 이름, 해당 이름이 쓰인 횟수
✔️조건 : 두 번 이상 쓰인 이름 (COUNT>=2)
✔️조건2: 이름이 없는 동물은 집계에서 제외 (IS NOT NULL)
✔️조건3: 이름 순으로 조회(ORDER BY)
✔️사용 미션 : GROUP BY
작성한 쿼리문은
SELECT NAME,
COUNT(ANIMAL_ID) AS ANIMAL_COUNT
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
GROUP BY 1
HAVING ANIMAL_COUNT >=2
ORDER BY NAME;
3) 세 번째 문제는 '카테고리 별 도서 판매량 집계하기'
Q. 2022년 1월의 카테고리 별 도서 판매량을 합산하고, 카테고리(CATEGORY), 총 판매량(TOTAL_SALES) 리스트를 출력하는 SQL문을 작성해주세요.
결과는 카테고리명을 기준으로 오름차순 정렬해주세요.
👉조회 시 보여야 하는 데이터 : 도서 총 판매량
✔️조건 : BOOK_SALES 테이블과 BOOK 테이블 JOIN
✔️조건2 : 날짜가 2022년 1월인 데이터 (WHERE)
✔️조건3: 카테고리별 총 판매량 (GROUP BY)
작성한 쿼리문은
SELECT B.category category, SUM(S.sales) AS total_sales
FROM BOOK_SALES S
LEFT JOIN BOOK B ON S.book_id = B.book_id
where DATE_FORMAT(sales_date, '%Y-%m') = '2022=01'
GROUP BY category
ORDER BY category;