[BigQuery] 특정 list의 데이터를 테이블 처럼 사용하기
예를 들어 전체 데이터 중에서 특정 제품들만 집계를 하는 경우라고 가정해보자. 이렇게 쿼리를 작성할 수 있을 것이다. select product_id, count(1) as count_salefrom tbl_saleswhere product_id in (123,23, 24, ...., 432)group by product_id 그런데, 해당 product_id 가 몇 백개정도로 만다거나, 쿼리의 여기 저기 쓰여야한다면 위의 쿼리 방식은 매우 불편한 방식이 된다. 그래서 Bigquery에서는 이런 식으로 작성하면 편리하다. with product_list as ( select product_id from unnest([ 684, 728, 686, 468, 662, 729, 451, 709, 617, ..
2025. 6. 18.
[BigQuery] 연속된 일자 생성하기
빅쿼리에서는 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_n..
2023. 10. 10.