빅쿼리에서는 generate_date_array 라는 함수를 사용하면, 일련의 날짜 데이터에 대한 배열을 결과 값으로 얻을 수 있다.
이를 응용하면,
특정 기간안에 주별 데이터(주별 시작일, 연도, 주넘버)를 구하여 여러 쿼리에 활용할 수 있다.
declare from_date, to_date date;
set from_date = date_sub('2023-01-01', interval 375 day);
set to_date = '2023-12-31';
select date_trunc(date(base_dt), week(sunday)) as current_dd
, format_date('%Y', base_dt) as week_year
, format_date('%U', base_dt) as week_num
from unnest(generate_date_array(from_date, to_date, INTERVAL 1 WEEK)) base_dt
order by 1 desc
위 쿼리는 주어진 시작 날짜의 1년전 부터 종료 날짜 기간 사이의 주별 데이터를 출력한다.
'분석 > 데이터분석' 카테고리의 다른 글
분류모델의 성과 측정 (0) | 2024.02.23 |
---|---|
[SQL] 월별로 잔존타입별 고객수 계산 (0) | 2024.01.25 |
[BigQuery] datetime 과 timestamp 의 차이점 ? (0) | 2023.08.25 |
[BigQuery] 빅쿼리에서 values 절을 구현해보자. (0) | 2023.02.20 |
[BigQuery] 빅쿼리에서 min_by, max_by (0) | 2023.01.30 |