📌 새로 알게된 것
DATE_FORMAT( , '%Y-%m-%d')
DATEDIFF(END_DATE, START_DATE)+1
CASE
when
when
when
else end
-- 코드를 입력하세요
SELECT i.animal_id, i.name from animal_ins i
where INTAKE_CONDITION = 'sick'
-- 코드를 입력하세요
SELECT i.ANIMAL_ID, i.NAME from ANIMAL_INS i
-- 코드를 입력하세요
SELECT i.ANIMAL_ID from ANIMAL_INS i
where i.NAME is not null
order by i.ANIMAL_ID asc
-- 코드를 입력하세요
SELECT i.NAME from ANIMAL_INS i
order by i.DATETIME asc
limit 1
-- 코드를 입력하세요
SELECT i.ANIMAL_ID, i.NAME, i.DATETIME from ANIMAL_INS i
order by i.NAME, i.DATETIME desc
-- 코드를 입력하세요
SELECT i.ANIMAL_ID, i.NAME from ANIMAL_INS i
where INTAKE_CONDITION != 'aged'
order by i.ANIMAL_ID asc
-- 코드를 입력하세요
SELECT i.NAME, i.DATETIME from ANIMAL_INS i
order by i.ANIMAL_ID desc
-- 코드를 입력하세요
SELECT f.FACTORY_ID, f.FACTORY_NAME, f.ADDRESS from FOOD_FACTORY f
where f.ADDRESS like '%강원도%'
order by f.FACTORY_ID asc
-- 코드를 입력하세요
SELECT count(*) as USERS from USER_INFO u
where u.age is null
-- 코드를 입력하세요
SELECT f.WAREHOUSE_ID,
f.WAREHOUSE_NAME,
f.ADDRESS,
(case when f.FREEZER_YN is null then 'N' else f.FREEZER_YN end) as FREEZER_YN
from FOOD_WAREHOUSE f
where f.ADDRESS like '%경기도%'
order by f.WAREHOUSE_ID asc
-- 코드를 입력하세요 O
SELECT count(*) as USERS from USER_INFO u
where year(u.joined) = '2021'
and u.age between 20 and 29
-- 코드를 입력하세요 X
SELECT count(u.age between 20 and 29) as USERS from USER_INFO u
where year(u.joined) = '2021'
-- 코드를 입력하세요
SELECT i.ANIMAL_ID from ANIMAL_INS i
where i.NAME is null
-- 코드를 입력하세요
SELECT max(p.price) as MAX_PRICE from PRODUCT p
-- 코드를 입력하세요
SELECT d.DR_NAME, d.DR_ID, d.MCDP_CD, substring(d.HIRE_YMD,1,10) as HIRE_YMD
from DOCTOR d
where d.MCDP_CD = 'CS' or d.MCDP_CD ='GS'
order by d.HIRE_YMD desc, d.DR_NAME asc
-- 코드를 입력하세요
SELECT p.PT_NAME, p.PT_NO, p.GEND_CD, p.AGE,
(case when p.TLNO is null then 'NONE' else p.TLNO end) as TLNO
from PATIENT p
where p.AGE <= 12 and p.GEND_CD = 'W'
order by p.AGE DESC, p.PT_NAME
-- 코드를 입력하세요
SELECT f.FLAVOR from FIRST_HALF f
order by f.TOTAL_ORDER desc, f.SHIPMENT_ID asc
-- 코드를 입력하세요
SELECT * from ANIMAL_INS
order by ANIMAL_ID
-- 코드를 입력하세요
SELECT b.BOOK_ID, substring(b.PUBLISHED_DATE,1,10) as PUBLISHED_DATE from BOOK b
where year(b.PUBLISHED_DATE) = '2021' and b.CATEGORY = '인문'
order by b.PUBLISHED_DATE asc
DATE_FORMAT(b.published_date,'%Y-%m-%d')
를 써보자-- 코드를 입력하세요
SELECT round(avg(c.DAILY_FEE),0) as AVERAGE_FEE from CAR_RENTAL_COMPANY_CAR c
where c.car_type = 'SUV'
-- 코드를 입력하세요
SELECT max(i.DATETIME) from ANIMAL_INS i
-- 코드를 입력하세요
SELECT f.FLAVOR from FIRST_HALF f left join ICECREAM_INFO i on f.FLAVOR = i.FLAVOR
where f.TOTAL_ORDER >= 3000 and i.INGREDIENT_TYPE = 'fruit_based'
order by f.TOTAL_ORDER desc
-- 코드를 입력하세요
SELECT * from CAR_RENTAL_COMPANY_CAR c
where c.options like '%네비게이션%'
order by car_id desc
SELECT
HISTORY_ID,
CAR_ID,
DATE_FORMAT(START_DATE, '%Y-%m-%d') AS START_DATE,
DATE_FORMAT(END_DATE, '%Y-%m-%d') AS END_DATE,
CASE WHEN DATEDIFF(END_DATE, START_DATE)+1 >= 30 THEN '장기 대여'
ELSE '단기 대여' END AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE DATE_FORMAT(start_date, '%Y-%m') = '2022-09'
ORDER BY HISTORY_ID DESC
📌 DATEDIFF(*startdate, enddate)* : *startdate*와 *enddate*의 차이를 보고하는 단위
- START_DATE와 END_DATE가 동일하다면 0으로 계산되기 때문에 +1일을 해줌으로써 대여일과 반납일이 동일해도 1일로 잡기 위함이다
-- 코드를 입력하세요
SELECT b.TITLE,
b.BOARD_ID,
r.REPLY_ID,
r.WRITER_ID,
r.CONTENTS,
DATE_FORMAT(r.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE
FROM USED_GOODS_BOARD b INNER JOIN USED_GOODS_REPLY r
ON b.BOARD_ID = r.BOARD_ID
WHERE DATE_FORMAT(b.CREATED_DATE, '%Y-%m') = '2022-10'
ORDER BY r.CREATED_DATE ASC, b.TITLE ASC