Funktioner, sortering och gruppering

Introduktion till Snowflake SQL

George Boorman

Senior Curriculum Manager, DataCamp

Strängfunktioner – INITCAP

Syntax: INITCAP( <expr> )

  • Gör om varje ord i en sträng till inledande versal
SELECT INITCAP(category) AS capitalized_category 
FROM pizza_type

Resultat med versalskrivna pizzanamn

Introduktion till Snowflake SQL

Strängfunktioner – CONCAT

  • Kombinerar uttrycken

Syntax:

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

Före CONCAT:

Kategorikolumn innan sammanslagning

  • Kombinerar category med ' - Pizza'
    SELECT CONCAT(category, ' - Pizza') 
      AS pizza_category 
    FROM pizza_type
    

Efter CONCAT:

Kategorikolumn efter sammanslagning

Introduktion till Snowflake SQL

Datum- och tidsfunktioner

  • CURRENT_DATE() eller CURRENT_DATE
  • CURRENT_TIME() eller CURRENT_TIME
SELECT CURRENT_DATE
SELECT CURRENT_TIME

Resultat för aktuellt datum

Resultat för aktuell tid

Introduktion till Snowflake SQL

EXTRACT

Syntax

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

Antal beställningar per månad

Introduktion till Snowflake SQL

SORTERING och GRUPPERING

  • SORTERING: ORDER BY
  • GRUPPERING: GROUP BY
    • Snowflake: GROUP BY ALL
Introduktion till 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
Introduktion till Snowflake SQL

Sammanfattning

Funktion/nyckelord Användning
INITCAP() Gör om varje ord i en sträng till inledande versal
CONCAT() Kombinera flera strängar
CURRENT_DATE Hämta aktuellt datum
CURRENT_TIME Hämta aktuell tid
EXTRACT Hämta ett datum-/tidselement, t.ex. month från ett datum
ORDER BY Sortera frågeresultat
GROUP BY ALL Gruppera frågan efter alla (icke-aggregerade) kolumner
Introduktion till Snowflake SQL

Nu kör vi en övning!

Introduktion till Snowflake SQL

Preparing Video For Download...