Funzioni, ordinamento e raggruppamento

Introduzione a Snowflake SQL

George Boorman

Senior Curriculum Manager, DataCamp

Funzioni stringa - INITCAP

Sintassi: INITCAP( <expr> )

  • Metti la maiuscola a ogni parola nella stringa
SELECT INITCAP(category) AS capitalized_category 
FROM pizza_type

Nomi pizza con iniziali maiuscole

Introduzione a Snowflake SQL

Funzioni stringa - CONCAT

  • Unisce le espressioni

Sintassi:

CONCAT( <expr1> [ , <exprN> ... ] )

Prima di CONCAT:

Colonna category prima della concatenazione

  • Unire category con ' - Pizza'
    SELECT CONCAT(category, ' - Pizza') 
      AS pizza_category 
    FROM pizza_type
    

Dopo CONCAT:

Colonna category prima della concatenazione

Introduzione a Snowflake SQL

Funzioni DATA e ORA

  • CURRENT_DATE() o CURRENT_DATE
  • CURRENT_TIME() o CURRENT_TIME
SELECT CURRENT_DATE
SELECT CURRENT_TIME

Risultato data corrente

Risultato ora corrente

Introduzione a Snowflake SQL

EXTRACT

Sintassi

  • EXTRACT( <date_or_time_part> FROM <date_or_time_expr> )
    • <date_or_time_part> - year, month, day, weekday, ecc.
SELECT EXTRACT(MONTH FROM order_date) AS order_month,
    COUNT(*) AS num_orders
FROM orders
GROUP BY order_month

Numero di ordini per mese

Introduzione a Snowflake SQL

ORDINAMENTO e RAGGRUPPAMENTO

  • ORDINAMENTO: ORDER BY
  • RAGGRUPPAMENTO: GROUP BY
    • Snowflake: GROUP BY ALL
Introduzione a Snowflake SQL

GROUP BY ALL

  • GROUP BY column1, column2
SELECT 
    pizza_type_id,
    size,
    AVG(price) AS average_price
FROM 
    pizzas
GROUP BY
    pizza_type_id, -- explicit columns
    size
ORDER BY 
    pizza_type_id, average_price DESC

  • GROUP BY ALL

 

SELECT 
    pizza_type_id,
    size,
    AVG(price) AS average_price
FROM 
    pizzas
GROUP BY ALL -- Don't specify columns 
ORDER BY 
    pizza_type_id, average_price DESC
Introduzione a Snowflake SQL

Riepilogo

Funzione/keyword Uso
INITCAP() Metti la maiuscola a ogni parola in una stringa
CONCAT() Unisci più stringhe
CURRENT_DATE Ottieni la data corrente
CURRENT_TIME Ottieni l'ora corrente
EXTRACT Estrai una parte di data/ora, es. month da una data
ORDER BY Ordina i risultati
GROUP BY ALL Raggruppa per tutte le colonne non aggregate
Introduzione a Snowflake SQL

Passiamo alla pratica !

Introduzione a Snowflake SQL

Preparing Video For Download...