비밀번호

커뮤니티2

  • 흐림속초6.8박무북춘천0.6흐림철원0.6흐림동두천2.1흐림파주0.6흐림대관령1.2흐림춘천0.9박무백령도7.5구름많음북강릉7.1흐림강릉8.1흐림동해7.7비서울3.6비인천4.9흐림원주1.1흐림울릉도7.3흐림수원4.2흐림영월1.1흐림충주2.7흐림서산6.8흐림울진6.7흐림청주5.1흐림대전3.9흐림추풍령1.5흐림안동0.4흐림상주0.6흐림포항4.0흐림군산5.9흐림대구1.6흐림전주6.8맑음울산5.5맑음창원5.3구름많음광주5.4맑음부산9.2구름조금통영7.4구름많음목포6.0흐림여수6.7흐림흑산도11.5구름조금완도7.8흐림고창5.8구름많음순천4.1흐림홍성5.6흐림서청주3.0구름조금제주14.5구름많음고산13.5구름조금성산14.1구름많음서귀포14.3맑음진주1.8흐림강화2.4흐림양평1.2흐림이천0.5흐림인제1.0흐림홍천0.7흐림태백1.9흐림정선군흐림제천1.2흐림보은1.2흐림천안4.7흐림보령8.4흐림부여4.0흐림금산2.6흐림세종3.5흐림부안6.7흐림임실2.7흐림정읍6.9흐림남원2.2흐림장수1.2흐림고창군7.3구름많음영광군6.8맑음김해시4.4흐림순창군2.8맑음북창원4.7맑음양산시4.1구름많음보성군4.6구름조금강진군4.7구름조금장흥4.9구름많음해남8.8구름많음고흥6.4맑음의령군-2.1흐림함양군0.1구름많음광양시5.1구름조금진도군8.6흐림봉화-1.5흐림영주0.7흐림문경1.3흐림청송군-1.8흐림영덕5.5흐림의성-0.3흐림구미2.3흐림영천0.2구름많음경주시1.7흐림거창-1.9흐림합천0.1맑음밀양1.9구름많음산청2.0구름조금거제5.9구름많음남해3.9맑음북부산5.6
  • 2025.12.16(화)

BigQuery활용[BigQuery&GA360]빅쿼리 커뮤니티입니다.

[Big Query] 빅쿼리 쿼리문 실습 - 아이템 정보 추출

안녕하세요, 빅 쿼리 쿼리문 실습한 내용을 정리해보도록 하겠습니다. 틀린 부분이 있어도 양해부탁드리고 잘 알려주시면 감사하겠습니다.

 

쿼리문을 이용하여 아이템 id, 아이템 이름, 아이템 브랜드, 아이템 옵션, 아이템 카테고리, 가격, 해당 아이템이 팔린 총 개수, 해당 아이템으로 얻은 총 수익을 구해보겠습니다. 해당 실습에서 사용한 테이블은 구글에서 제공하는 실습용 더미 테이블입니다.

 

 

해당하는 쿼리문은 이것인데요, 쿼리를 하나씩 살펴보겠습니다.

 

우선 select 문에 결과 테이블에서 확인하고 싶은 정보를 가진 필드 이름을 넣습니다. 여기서 입력한 필드 이름은 각각 앞서 말한 우리가 구하고자 하는 정보의 컬럼명입니다. 각 필드 이름이 무슨 요소를 나타내는지는 빅쿼리 스키마 구조 도움말에서 확인할 수 있습니다. (링크 참조)

https://support.google.com/analytics/answer/7029846?hl=ko&ref_topic=9359001&sjid=2127074285611473672-AP#zippy=%2Citems

또한 집계함수 sum을 사용하였는데요, 해당 함수는 필드의 총합을 구해서 나타내는 함수입니다. 위의 쿼리에서는 quantity와 item_revenue의 총합을 나타내고 있습니다.

 

다음은 from 문입니다. 무슨 테이블에서 이 요소들을 select 하여 보일것인지 명시하는것인데요. 여기서 사용한 unnest() 함수는  ARRAY 를 일련의 행으로 변환하는 함수입니다. 이를 평면화라고 부릅니다. 평면화를 통해 배열화 되어있는 필드에 접근할수 있게 됩니다.

 

그 다음은 where 문입니다. 조건을 걸어 해당 조건에 맞는 결과만 볼수 있도록 하는 역할입니다. and / or 을 사용할수 있습니다. 한가지 유의하여야 하는 것은 'null일 경우', 혹은 'null이 아닐 경우'를 조건으로 사용하고 싶다면 =, != 연산자가 아니라 is null, is not null을 사용하여야 한다는 것입니다. 위의 쿼리에서는 이벤트 이름이 'purchase'이고 아이템 id가 null 과 not set이 아닐 경우의 결과를 보려하고 있습니다.

 

다음은 group by 절입니다. select 문에서 집계함수 sum을 사용하였는데요, 집계함수를 사용하려면 반드시 group by 절을 사용해주어야합니다. 집계함수를 무엇을 기준으로 사용하는지 명시해주는 역할을 하기 때문입니다. 따라서 위의 쿼리에서는 아이템 id, 아이템 이름, 아이템 브랜드, 아이템 옵션, 아이템 카테고리, 가격을 기준으로 (즉, 이 모든 항목들의 값이 같은 로우들) quantity와 item_revenue의 총합을 보이고 있는것입니다. 

 

마지막으로 order by 절입니다. 이는 결과 테이블을 정렬하는 역할을 합니다. 아이템 id의 오름차순으로 결과 테이블을 정렬해줍니다. 

 


해당 쿼리의 실행결과입니다.

 

감사합니다.

 

 

  

 

전체댓글0

검색결과는 총 14건 입니다.    글쓰기
1