Subquery: 하나의 SQL문에 포함되어 있는 또 다른 SQL문
Subquery가 필요한 경우
Subquery문의 기본 구조
SELECT column1, special_column
FROM
( SELECT column1, column2 special_column
FROM table1
) a
<aside>
[ 수수료 구간 ]
~5000원 미만 0.05%
~20000원 미만 1%
~30000원 미만 2%
30000원 초과 3%
</aside>
SELECT
restaurant_name
, price_per_plate*ratio_of_add "수수료"
FROM
(
SELECT
restaurant_name
, CASE WHEN price_per_plate < 5000 THEN 0.0005
WHEN price_per_plate < 20000 THEN 0.01
WHEN price_per_plate < 30000 THEN 0.02
ELSE 0.03 END ratio_of_add
, price_per_plate
FROM
(
SELECT
restaurant_name
, avg(price/quantity) price_per_plate
FROM food_orders fo
GROUP BY 1
) a
) b
SELECT
restaurant_name
, 지역
, CASE WHEN 배달시간<=20 THEN '~ 20분'
WHEN 배달시간 BETWEEN 21 AND 30 THEN '21 ~ 30분'
ELSE '30분 ~' END '구분'
FROM
(
SELECT
restaurant_name
, SUBSTR(addr,1,2) "지역"
, avg(delivery_time) "배달시간"
FROM food_orders fo2
GROUP BY 1,2
) a