본문 바로가기
  • base
SQL

[BigQuery] LAG, LEAD 함수

by Dobby_b 2022. 5. 6.

https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#lag

 

함수, 연산자, 조건부  |  BigQuery  |  Google Cloud

 

cloud.google.com

 

LAG 함수와 LEAD 함수는 행 간 차이 계산, 이전/다음 행 값 가져오기, 행 간 계산, 행 간 값 연산 등의 기능을 할 수 있는 함수입니다.

 

SQL로 전처리를 하다보면, 이전 값이나 다음 값이 필요하거나 각 값을 연산해야 할 때가 많은데, 그때마다 피벗 테이블을 만들어서 열 간 연산을 하기에는 용량 / 쿼리문의 길이 등이 너무 비효율적이라는 생각이 들더라구요 :( 

 

위 링크는 LAG, LEAD 함수의 빅쿼리 공식 위키입니다 :)

 

 

1. 사용 문법

LAG(불러올 항목,오프셋) OVER(행의 그룹 조건 지정)

ex) lag(date) over(partition by key order by date)
: key값의 이전 일자를 가져오는 함수 (사용자의 이전 접속 일자, 과거 결제 일자 등을 뽑을 때)
  • partiton by의 경우, 별도 그룹이 필요하지 않을 경우 지정하지 않아도 무방합니다.

'SQL' 카테고리의 다른 글

[Intro] 코드 뷰어 프로그램 추천 Visual Studio Code  (0) 2023.06.03
[BigQuery] 순위 관련 함수  (0) 2021.06.15