Skriva frågor i BigQuery

Introduktion till BigQuery

Matt Forrest

Field CTO

Skriva enkla frågor

En enkel fråga i BigQuery

-- Note the table name structure

SELECT
    * 
FROM 
    `project.ecommerce.order_items`
Introduktion till BigQuery

Köra frågor i BigQuery

Du kan köra frågor i BigQuery via:

  • BigQuery Studio
  • Klientbibliotek (t.ex. Python)
  • Google Clouds kommandoradsverktyg
  • Pandas

BigQuery-konsolen

Introduktion till BigQuery

Använda korrekta tabellnamn

-- Using the full table name structure


SELECT
    * 
FROM 
    `project.ecommerce.ecomm_order_details`
/* Using the shorthand 
table name structure */

SELECT
    * 
FROM 
    ecommerce.ecomm_order_details
Introduktion till BigQuery

GoogleSQL

Referens för datatyper i GoogleSQL

Introduktion till BigQuery

Våra datamängder: Olist E-Commerce

  • Orders: Ordernummer och information om orderrader
  • Order details: Kund-id, order- och leveransdatum
  • Payments: Betalningstyp, delade betalningar, belopp
  • Products: Produktkategori, beskrivning, dimensioner

Person med paket

1 https://www.kaggle.com/datasets/olistbr/brazilian-ecommerce
Introduktion till BigQuery

Products

  • product_id – unikt produkt-id
  • product_photos_qty – antal produktfoton
  • product_weight_g – produktens vikt
  • product_category_name_english – produktkategorinamn

Person med paket

Introduktion till BigQuery

Orders

  • order_id – unikt order-id
  • order_itemsSTRUCT med information om orderrader
    • order_item_id – radnummer i ordern
    • product_id – unikt produkt-id
    • seller_id – unikt säljar-id
    • price – pris för orderraden

Person med paket

Introduktion till BigQuery

Order details

  • order_id – unikt order-id
  • customer_id – unikt kund-id
  • order_status – aktuell orderstatus
  • order_purchase_timestamp – tidsstämpel när ordern lades
  • order_approved_at – tidsstämpel när ordern godkändes
  • order_delivered_carrier_date – tidsstämpel när ordern togs emot av transportören
  • order_delivered_customer_date – tidsstämpel när ordern levererades
  • order_estimated_delivery_date – tidsstämpel för beräknat leveransdatum
Introduktion till BigQuery

Payments

  • order_id – unikt order-id
  • payment_type – betalningstyp
  • payment_sequential – betalningsnummer
  • payment_installments – antal delbetalningar
  • payment_value – betalningens värde

Person med paket

Introduktion till BigQuery

Repetition: aggregeringar och joins

-- Count of orders per customers

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

Fem nyckelkomponenter:

  1. Aggregatfunktion
  2. Den vänstra datamängden
  3. Den högra datamängden
  4. Joinvillkor
  5. Grupperingsvillkor
Introduktion till BigQuery

Nu kör vi en övning!

Introduktion till BigQuery

Preparing Video For Download...