• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

from절 서브쿼리로만 작성해야하는 이유

22.02.04 22:35 작성 조회수 127

1

select num , lag(num,1) over (order by id) as log1 , lag(num,2) over (order by id) as log2 from logs
 
where num = log1 and num = log2
 
 
안녕하세요.
이런식으로 작성하면 왜 오류가 발생하나요?

답변 1

답변을 작성해보세요.

0

안녕하세요 limoyhoy님, 답변 드립니다.

질문 주신 내용은 SQL 실행 순서와 관련이 있습니다.
FROM 절, WHERE절이 실행된 이후에 SELECT절이 실행되기 때문에, WHERE절에서는 SELECT절에 작성한 alias를 사용할 수 없습니다.
SQL 실행 순서와 관련한 웹사이트 링크를 첨부하니 참고 부탁드립니다.

[SQLBolt] Order of execution of a Query