[TIL]_2025.02.27 본캠프 11일차 (1): 코드카타 SQL

JIYUU·2025년 2월 27일

44번. 가격대 별 상품 개수 구하기
PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요.

-- 코드를 입력하세요
SELECT 
	CASE WHEN PRICE BETWEEN 0 AND 9999 THEN 0
	WHEN PRICE < 20000 THEN 10000
	WHEN PRICE < 30000 THEN 20000
	WHEN PRICE < 40000 THEN 30000
	WHEN PRICE < 50000 THEN 40000
	WHEN PRICE < 60000 THEN 50000
	WHEN PRICE < 70000 THEN 60000
	WHEN PRICE < 80000 THEN 70000
	WHEN PRICE < 90000 THEN 80000
	END AS PRICE_GROUP,
	COUNT(PRODUCT_ID) AS PRODUCTS
FROM 
	PRODUCT
GROUP BY 
	PRICE_GROUP
ORDER BY 
	1 ASC;

45번. 3월에 태어난 여성 회원 목록 출력하기
다음은 식당 리뷰 사이트의 회원 정보를 담은 MEMBER_PROFILE 테이블입니다. MEMBER_PROFILE 테이블은 다음과 같으며 MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH는 회원 ID, 회원 이름, 회원 연락처, 성별, 생년월일을 의미합니다.
MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요.

SELECT 
    MEMBER_ID, 
    MEMBER_NAME,
    GENDER,
    DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d')
FROM 
	MEMBER_PROFILE
WHERE 
	GENDER = 'W' 
	AND MONTH(DATE_OF_BIRTH) = '03' 
    AND TLNO IS NOT NULL
ORDER BY 
	MEMBER_ID ASC;

46번. 대여 기록이 존재하는 자동차 리스트 구하기
CAR_RENTAL_COMPANY_CAR 테이블과 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 자동차 종류가 '세단'인 자동차들 중 10월에 대여를 시작한 기록이 있는 자동차 ID 리스트를 출력하는 SQL문을 작성해주세요. 자동차 ID 리스트는 중복이 없어야 하며, 자동차 ID를 기준으로 내림차순 정렬해주세요.

SELECT 
    DISTINCT C.CAR_ID
FROM 
    CAR_RENTAL_COMPANY_CAR C 
    JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY H 
    ON C.CAR_ID = H.CAR_ID
WHERE 
    C.CAR_TYPE = '세단' 
    AND MONTH(H.START_DATE) = '10'
ORDER BY 
    C.CAR_ID DESC;

47번. 모든 레코드 조회하기
동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요. SQL을 실행하면 다음과 같이 출력되어야 합니다.

SELECT 
    *
FROM 
    ANIMAL_INS
ORDER BY 
    ANIMAL_ID;

0개의 댓글