
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
SQL문 1
SELECT cuisine_type "음식 타입",
sum(price) "원래 가격",
sum(discount_price) "할인 가격",
sum(price) - sum(discount_price) "할인 적용 가격"
from
(
SELECT a.cuisine_type ,
a.price ,
a.price * ((c.age-50)*0.005) discount_price
FROM food_orders a left join customers c on a.customer_id = c.customer_id
where c.age >= 50
) aa
group by 1
order by 3 DESC
SQL문 2
select cuisine_type, sum(price) "원래 가격",
sum(price)-sum(discount_price) "할인 적용 가격",
sum(discount_price) "할인 가격"
from
(
select a.cuisine_type,
price,
price*((b.age-50)*0.005) discount_price
from food_orders a inner join customers b on a.customer_id=b.customer_id where b.age>=50
) t
group by 1
order by 4 desc
1번은 제가 작성한 sql문, 2번은 강의 자료에 나와 있는 sql문입니다.
제가 작성한 SQL문이 다른 부분은 정상작동하는 것 같은데, 제가 보기에는 문제에 '고객 정보가 없는 경우도 포함하여 조회'라는 조건이 있어서 left join을 사용했습니다!
근데 강의자료에 나와있는 코드에는 같은 부분에 inner join이라고 돼있어서 오타가 아닌지 여쭤봅니다! inner join을 사용하면 고객 정보가 있는 경우만 조인하게 되는 게 아닌가요?
