sql 절 우선순위
2024. 4. 13. 13:34ㆍDBMS/SQLQuery
반응형
sql 문에서 연산과 clause의 우선순위를 제대로 알아야 속도향상을 기대할 수 있다.
작성 우선순위
select from join where group by having order by limit
실행 우선순위
from join where group by having select order by limit
ex
생산실적과 출하실적 두 테이블을 join 하여 도착지별 생닭중량 합이 5kg 을 초과하는 곳 중에서 생닭중량 합을 기준으로 내림차순했을 때 TOP 3 만 출력되도록 하는 쿼리
select
b.destination, sum(a.raw_weight) "prod_sum"
from
prod a
inner join ship b
on a.chick_no = b.chick_no
where a.disease_yn = 'N' and a.size_stand >= 11
group by b.destination
having(sum(a.raw_weight)/1000)>=5
order by sum(a.raw_weight) desc
limit 3;
실제 순서는 from 절에서 두 테이블을 불러오고 join 절에서 두 테이블을 연결 후 where 조건절에서 데이터를 필터링 한다. 그리고 select 절에서 열을 조회화고 sort 후 limit로 행을 3개까지 제한한다.
반응형
'DBMS > SQLQuery' 카테고리의 다른 글
나눗셈 몫 (0) | 2024.05.08 |
---|---|
DECODE 함수에서 NULL (0) | 2024.04.19 |
NTILE (1) | 2024.03.08 |
CUME_DIST (0) | 2024.03.08 |
RATIO_TO_REPORT (0) | 2024.03.08 |