내일배움캠프/TIL

[TIL]241210_코드카타, 데이터 리터러시 강의 1

dydatablog 2024. 12. 10. 19:36
728x90

코드카타

 

61. 서울에 위치한 식당 목록 출력하기

SELECT ri.rest_id,
    ri.rest_name,
    ri.food_type,
    ri.favorites,
    ri.address,
    ROUND(AVG(review_score),2) AS SCORE
FROM REST_INFO ri JOIN REST_REVIEW rr ON ri.rest_id =rr.rest_id
WHERE address LIKE '서울%'
GROUP BY ri.rest_id
ORDER BY score desc, favorites desc;

 

62. 자동차 대여 기록에서 장기/단기 대여 구분하기

SELECT history_id, car_id, 
    DATE_FORMAT(start_date,'%Y-%m-%d') START_DATE,
    DATE_FORMAT(end_date,'%Y-%m-%d') END_DATE,
    CASE WHEN DATEDIFF(end_date, start_date) >= 29 THEN '장기 대여'
    ELSE '단기 대여' END AS RENT_TYPE
    -- 빌린 당일에 대여한 사람은 DATEDIFF(end_date, start_date)의 값이 0이 되어버리기 때문에 30일 이상인 사람이지만, 0부터 세어서 29 이상인 값을 찾아야함
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE DATE_FORMAT(start_date,'%Y-%m') = '2022-09'
ORDER BY history_id desc;

 

63. 자동차 평균 대여 기간 구하기

SELECT car_id, 
    ROUND(AVG(DATEDIFF(end_date, start_date)+1),1) AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY car_id
HAVING AVERAGE_DURATION >= 7
ORDER BY 2 desc, car_id desc;

 

64. 헤비 유저가 소유한 장소

SELECT ID, NAME, HOST_ID
FROM (
SELECT ID, NAME, HOST_ID,
    COUNT(HOST_ID) OVER (PARTITION BY HOST_ID) AS count
FROM PLACES
GROUP BY ID
ORDER BY host_id ) AS sub
WHERE count >= 2
ORDER BY ID;

 

65. 우유와 요거트가 담긴 장바구니

SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME = 'Milk' 
AND CART_ID in
(
SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME = 'Yogurt'
)
ORDER BY 1;

https://dydatablog.tistory.com/57

 

데이터 리터러시란?_문제 정의, 지표 설정, 결론 도출

데이터 리터러시란?데이터를 읽고 이해하는 능력, 비판적으로 분석하며, 결과를 의사소통에 활용할 수 있는 능력.이를 수행하려면 데이터 수집과 데이터 원천을 이해하고 데이터활용법과 핵

dydatablog.tistory.com

 

 

728x90