Datové typy Snowflake SQL

Introduction to Snowflake SQL

George Boorman

Senior Curriculum Manager, DataCamp

Běžné datové typy

Kategorie Datové typy
Text/řetězec VARCHAR, CHAR, TEXT
Introduction to Snowflake SQL

Běžné datové typy

Kategorie Datové typy
Text/řetězec VARCHAR, CHAR, TEXT
Číselné INTEGER
Introduction to Snowflake SQL

Běžné datové typy

Kategorie Datové typy
Text/řetězec VARCHAR, CHAR, TEXT
Číselné INTEGER
Logické BOOLEAN
Introduction to Snowflake SQL

Běžné datové typy

Kategorie Datové typy
Text/řetězec VARCHAR, CHAR, TEXT
Číselné INTEGER
Logické BOOLEAN
Datum/čas DATE, TIME, TIMESTAMP
1 https://docs.snowflake.com/en/sql-reference/intro-summary-data-types
Introduction to Snowflake SQL

Datové typy Snowflake SQL – NUMBER

NUMBER(p, s)

 

  • NUMERIC je v Snowflake alias pro NUMBER
  • p = přesnost; s = měřítko
  • Max hodnoty p a s: 38
    • Překročení způsobí zaokrouhlení!
Introduction to Snowflake SQL

Datové typy Snowflake SQL – TIMESTAMP_LTZ

  • TIMESTAMP_LTZ
    • Kombinuje DATE a TIME s místní časovou zónou
    • Formát: YYYY-MM-DD HH:MI:SS

 

CREATE TABLE orders (
  -- Timestamp with local time zone
  order_timestamp TIMESTAMP_LTZ
  )

Data s časovým razítkem v místní zóně

Introduction to Snowflake SQL

Převod datových typů – Co?

  • Převod dat z jednoho typu na jiný

Sloupec množství objednávky – z textu na číslo

Introduction to Snowflake SQL

Převod datových typů – Proč?

  • Zlepšení výkonu
  • Přesnost a konzistence dat
  • Kvalita dat
Introduction to Snowflake SQL

Převod datových typů – Jak?

  1. CAST

    Syntaxe:

    • CAST( <source_data/column> AS <target_data_type> )

    • CAST('80' AS INT)

  2. ::

    Syntaxe:

    • <source_data/column>::<target_data_type>

    • '80'::INT

Introduction to Snowflake SQL

CAST

SELECT CAST(order_timestamp AS DATE) 
       AS order_date 
FROM orders
Introduction to Snowflake SQL

Výsledky CAST

Před převodem order_timestamp_ltz

Po převodu dat data objednávky

Introduction to Snowflake SQL

Konverzní funkce

  • Příklady: TO_VARCHAR, TO_DATE atd.

TO_VARCHAR

  • TO_VARCHAR( <expr> )

    • expr – číslo, časové razítko atd.

    • Výsledek: VARCHAR

Příklad:

SELECT TO_VARCHAR(86)

Výsledek:

86

Introduction to Snowflake SQL

Kontrola datových typů

DESC TABLE orders
name        type            kind     null?    default     primary key    
ORDER_ID    NUMBER(38,0)    COLUMN   N        null        Y    
ORDER_DATE  DATE            COLUMN   Y        null        N    
ORDER_TIME  TIME(9)         COLUMN   Y        null        N
Introduction to Snowflake SQL

Pojďme procvičovat!

Introduction to Snowflake SQL

Preparing Video For Download...