반응형
🥳 여러번의 연산을 묶어서 수행하자 (Subquery)
수학에서 먼저 계산할떄 괄호를 이용해 묶어서 먼저 수행하고 나머지를 계산하는 것처럼 쿼리에서도 subquery를 이용해 구간별로 묶어서 수행할 수 있다.
select order_id,
restaurant_name,
if(limit_price > 0, 'Nofood','food') can_i_eat
from
(
select order_id,
restaurant_name,
price-15000 limit_price
from food_orders
) a
처음으로 food_orders칼럼에서 order_id, restauran_name, price-15000을 뽑아 limit_price로 이름지어주고, limit_price가 양수이면 'Nofood'를, 음수이면 'food'를 뽑아준다.
🥳 서로 다른 테이블의 데이터를 합치기 (Join)
데이터가 하나의 테이블에 모여있지 않은 경우 여러 테이블에서 데이터를 불러오는 방법은 join을 사용할 수 있다.
- left join : 공통 칼럼 기준으로, 하나의 테이블에 값이 없더라도 모두 조회하는 경우
- inner join : 공통 칼럼 기준으로 두 테이블 모두에 있는 값만 조회한다.
select f.order_id,
f.customer_id,
f.restaurant_name,
f.price,
p.pay_type,
p.vat
from food_orders f left join payments p on f.order_id = p.order_id
food_orders와 payments의 테이블을 가져와 order_id를 기준으로 데이터를 가져온다.
한쪽 테이블에 공동된 값이 없더라도 모두 조회하여 가져온다.
반응형
'TIL' 카테고리의 다른 글
[TIL] 스코프 (Scope) (1) | 2024.01.02 |
---|---|
[TIL] 자바스크립트 기본 문법 숙제 (1) | 2023.12.29 |
[TIL] SQL과 기본 쿼리 2 (0) | 2023.12.26 |
[TIL] SQL과 기본 쿼리 (1) | 2023.12.22 |
[TIL] 자바스크립트와 제이쿼리 (2) | 2023.12.21 |
댓글