SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
WHERE NAME IN ('Lucy', 'Ella', 'Pickle', 'Rogan', 'Sabrina', 'Mitty')
SELECT MCDP_CD AS '진료과코드', COUNT(*) AS '5월예약건수'
FROM APPOINTMENT
WHERE MONTH(APNT_YMD) = '05'
GROUP BY MCDP_CD
ORDER BY COUNT(*), MCDP_CD
SELECT P.PRODUCT_CODE, SUM(P.PRICE * O.SALES_AMOUNT) AS SALES
FROM PRODUCT P INNER JOIN OFFLINE_SALE O
ON P.PRODUCT_ID = O.PRODUCT_ID
GROUP BY P.PRODUCT_ID
ORDER BY SALES DESC, P.PRODUCT_CODE
SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE MONTH(DATE_OF_BIRTH)=3 AND TLNO IS NOT NULL AND GENDER ='W'
ORDER BY MEMBER_ID
SELECT CAR_TYPE, COUNT(*) AS CARS FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%시트%'
GROUP BY CAR_TYPE
ORDER BY CAR_TYPE
SELECT B.BOOK_ID, A.AUTHOR_NAME, DATE_FORMAT(B.PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATE FROM BOOK B
INNER JOIN AUTHOR A ON B.AUTHOR_ID = A.AUTHOR_ID
WHERE B.CATEGORY = '경제'
ORDER BY B.PUBLISHED_DATE
SELECT I.INGREDIENT_TYPE, SUM(F.TOTAL_ORDER) AS TOTAL_ORDER FROM ICECREAM_INFO I
INNER JOIN FIRST_HALF F ON I.FLAVOR = F.FLAVOR
GROUP BY I.INGREDIENT_TYPE
ORDER BY F.TOTAL_ORDER
SELECT (CASE WHEN (0 < PRICE) AND (PRICE < 10000) then 0
WHEN (10000 <= PRICE) and (PRICE < 20000) then 10000
WHEN (20000 <= PRICE) and (PRICE < 30000) then 20000
WHEN (30000 <= PRICE) and (PRICE < 40000) then 30000
WHEN (40000 <= PRICE) and (PRICE < 50000) then 40000
WHEN (50000 <= PRICE) and (PRICE < 60000) then 50000
WHEN (60000 <= PRICE) and (PRICE < 70000) then 60000
WHEN (70000 <= PRICE) and (PRICE < 80000) then 70000
ELSE 80000 END
) AS PRICE_GROUP, COUNT(*) AS PRODUCTS
FROM PRODUCT
GROUP BY PRICE_GROUP
ORDER BY PRICE_GROUP
SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*) >= 2
ORDER BY USER_ID, PRODUCT_ID DESC
SELECT BOARD_ID, WRITER_ID, TITLE, PRICE,
(
CASE WHEN STATUS = 'SALE' THEN '판매중'
WHEN STATUS = 'RESERVED' THEN '예약중'
ELSE '거래완료' END
) AS STATUS
FROM USED_GOODS_BOARD
WHERE DATE_FORMAT(CREATED_DATE, '%Y-%m-%d') = '2022-10-05'
ORDER BY BOARD_ID DESC
SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE)+1), 1) AS AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
HAVING AVG(DATEDIFF(END_DATE, START_DATE) + 1) >= 7
ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC
SELECT i.name, i.datetime from animal_ins i
left join animal_outs o on i.ANIMAL_ID = o.ANIMAL_ID
where o.animal_id is null
order by i.datetime
limit 3
SELECT i.ANIMAL_ID, i.name from animal_ins i
inner join animal_outs o on i.animal_id = o.animal_id
where i.datetime > o.datetime
order by i.datetime
SELECT i.animal_id, i.name from ANIMAL_INS i
left join ANIMAL_OUTS o on i.ANIMAL_ID = o.ANIMAL_ID
where o.datetime - i.datetime
order by o.datetime - i.datetime desc
limit 2
SELECT ORDER_ID, PRODUCT_ID, date_format(OUT_DATE, '%Y-%m-%d') as OUT_DATE ,
(case when out_date < '2022-05-01' then '출고완료'
when out_date = '2022-05-01' then '출고완료'
when out_date > '2022-05-01' then '출고대기'
else '출고미정' end) as 출고여부
from FOOD_ORDER
order by ORDER_ID;
SELECT b1.CATEGORY, sum(b2.SALES) as TOTAL_SALES from book b1
inner join book_sales b2 on b1.book_id = b2.book_id
where substring(b2.SALES_DATE, 1, 7) = '2022-01'
group by b1.CATEGORY
order by b1.CATEGORY
SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS O
LEFT JOIN ANIMAL_INS I ON I.ANIMAL_ID = O.ANIMAL_ID
WHERE I.ANIMAL_ID IS NULL
SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITES FROM REST_INFO
WHERE (FOOD_TYPE,FAVORITES) IN (
SELECT FOOD_TYPE, MAX(FAVORITES)
FROM REST_INFO
GROUP BY FOOD_TYPE
)
ORDER BY FOOD_TYPE DESC
SELECT U.USER_ID, U.NICKNAME, SUM(B.PRICE) AS TOTAL_SALES FROM USED_GOODS_USER U
INNER JOIN USED_GOODS_BOARD B ON U.USER_ID = B.WRITER_ID
WHERE STATUS = 'DONE'
GROUP BY U.USER_ID
HAVING TOTAL_SALES >= 700000
ORDER BY TOTAL_SALES
SELECT DISTINCT(C.CAR_ID) AS CAR_ID FROM CAR_RENTAL_COMPANY_CAR C
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY H ON C.CAR_ID = H.CAR_ID
WHERE C.CAR_TYPE = '세단' AND DATE_FORMAT(START_DATE, '%m') = '10'
ORDER BY C.CAR_ID DESC
SELECT U.USER_ID, U.NICKNAME,
CONCAT(U.CITY," ", U.STREET_ADDRESS1," ",U.STREET_ADDRESS2) AS 전체주소,
CONCAT(LEFT(TLNO,3),"-",MID(TLNO,4,4),"-",RIGHT(TLNO,4)) AS 전화번호
FROM USED_GOODS_USER U
INNER JOIN (
SELECT WRITER_ID
FROM USED_GOODS_BOARD
GROUP BY WRITER_ID
HAVING COUNT(*) >= 3
) B ON U.USER_ID = B.WRITER_ID
ORDER BY U.USER_ID DESC
✏️ 컬럼들을 이어붙여서 만들 때 concat이라는 문법을 쓸 수 있다. left(), right(), mid() 함수는 엑셀과 똑같아서 이용하기 편했다. 그래서 형식을 만들어 줄 때도 여러가지 문법들로 여러가지 형태로 만들 수 있다.