BigQuery에서 쿼리 작성

BigQuery 입문

Matt Forrest

Field CTO

간단한 쿼리 작성

BigQuery의 간단한 쿼리

-- 테이블 이름 구조에 유의

SELECT
    * 
FROM 
    `project.ecommerce.order_items`
BigQuery 입문

BigQuery에서 쿼리 실행

BigQuery에서 쿼리를 실행하는 방법:

  • BigQuery Studio
  • 클라이언트 라이브러리(예: Python)
  • Google Cloud 명령줄 도구
  • Pandas

BigQuery 콘솔

BigQuery 입문

올바른 테이블 이름 사용

-- 전체 테이블 이름 구조 사용


SELECT
    * 
FROM 
    `project.ecommerce.ecomm_order_details`
/* 약식 
테이블 이름 구조 사용 */

SELECT
    * 
FROM 
    ecommerce.ecomm_order_details
BigQuery 입문

GoogleSQL

GoogleSQL 데이터 타입 참조

BigQuery 입문

데이터셋: Olist 전자상거래

  • Orders: 주문 번호 및 주문 품목 정보
  • Order details: 고객 ID, 주문/배송 날짜
  • Payments: 결제 유형, 분할 결제, 금액
  • Products: 상품 카테고리, 설명, 규격

소포를 든 사람

1 https://www.kaggle.com/datasets/olistbr/brazilian-ecommerce
BigQuery 입문

Products

  • product_id - 고유 상품 ID
  • product_photos_qty - 상품 사진 수
  • product_weight_g - 상품 무게
  • product_category_name_english - 상품 카테고리명

소포를 든 사람

BigQuery 입문

Orders

  • order_id - 고유 주문 ID
  • order_items - 주문 품목 정보를 담은 STRUCT
    • order_item_id - 주문 내 품목 번호
    • product_id - 고유 상품 ID
    • seller_id - 고유 판매자 ID
    • price - 품목 가격

소포를 든 사람

BigQuery 입문

Order details

  • order_id - 고유 주문 ID
  • customer_id - 고유 고객 ID
  • order_status - 현재 주문 상태
  • order_purchase_timestamp - 구매 시각
  • order_approved_at - 승인 시각
  • order_delivered_carrier_date - 운송사 인수 시각
  • order_delivered_customer_date - 고객에게 배송된 시각
  • order_estimated_delivery_date - 예상 배송일 시각
BigQuery 입문

Payments

  • order_id - 고유 주문 ID
  • payment_type - 결제 유형
  • payment_sequential - 결제 순번
  • payment_installments - 할부 개월 수
  • payment_value - 결제 금액

소포를 든 사람

BigQuery 입문

집계와 조인 복습

-- 고객별 주문 수

SELECT
    d.customer_id,
    COUNT(o.order_id)
FROM 
    ecommerce.ecomm_order_details d
JOIN 
    ecommerce.ecomm_orders o
USING (order_id)
GROUP BY
    d.customer_id

핵심 5요소:

  1. 집계 함수
  2. 왼쪽 데이터셋
  3. 오른쪽 데이터셋
  4. 조인 조건
  5. 그룹 조건
BigQuery 입문

Ayo berlatih!

BigQuery 입문

Preparing Video For Download...