Numeryczne typy danych

Typy danych i funkcje w Snowflake

Jake Roach

Field Data Engineer

Numeryczne typy danych

$$

                           NUMBER

  • Kontrola rozmiaru wartości numerycznych
  • DECIMAL, INTEGER są synonimami NUMBER

$$

126          -- Liczby całkowite
7.99         -- Kwoty w dolarach
.000191      -- Wartości dziesiętne
-46.88       -- Wartości ujemne
563719100    -- Identyfikatory

...

1.234E+2     -- Stałe numeryczne
Typy danych i funkcje w Snowflake

Precyzja i skala

NUMBER(<precision>, <scale>)

            Precyzja to łączna liczba cyfr w liczbie

            Skala to liczba cyfr po przecinku dziesiętnym

$$

-- Precyzja: 4, Skala: 2
NUMBER(4, 2)

1.75 -- Poprawne! 624.99 -- Nie mieści się
Typy danych i funkcje w Snowflake

Precyzja i skala

-- Precyzja: 3, Skala: 0
NUMBER(3, 0)

42     -- Poprawne!
1000   -- Nie mieści się
41.99  -- Nie mieści się

$$

$$

  • Domyślny NUMBER to NUMBER(38, 0)
Typy danych i funkcje w Snowflake

Definiowanie numerycznych typów danych

CREATE TABLE sales (
    id NUMBER,               -- Tradycyjne dane numeryczne

price NUMBER(5, 2), -- Kwoty do $999.99
quantity NUMBER(4, 0) -- Liczby całkowite mniejsze niż 10 000
);
DESCRIBE TABLE schema.table;
                         name    |     type     |   kind   | ...  
                      ---------- | ------------ | -------- | ---  
                          id     | NUMBER(38,0) |  COLUMN  | ...  
                         price   | NUMBER(5,2)  |  COLUMN  | ...  
                       quantity  | NUMBER(4,0)  |  COLUMN  | ...
Typy danych i funkcje w Snowflake

Typ danych FLOAT

$$

  • Używany w obliczeniach naukowych i statystycznych
  • „Przybliżony" typ numeryczny
  • Możliwość błędów zaokrąglenia
  • Szybki i obsługuje ekstremalną skalę!

$$

               0.0000000120056

CREATE TABLE metrics (
    id NUMBER,
    accuracy FLOAT
);
DESCRIBE TABLE schema.table;
     name    |       type     | ...  
  ---------- | -------------- | ---  
      id     |  NUMBER(38,0)  | ...  
   accuracy  |  FLOAT         | ...
Typy danych i funkcje w Snowflake

Przetwarzanie danych numerycznych

  • Dane numeryczne można przetwarzać na wiele sposobów

$$

  • Porównywanie wartości za pomocą =, !=, <, >.
  • Wykonywanie operacji arytmetycznych, takich jak +, -, /, *.
  • Agregowanie danych za pomocą SUM, AVG, COUNT.
  • Obliczanie statystyk podsumowujących za pomocą MEDIAN, STDDEV, CORR.

$$

  • ... i wiele więcej!
Typy danych i funkcje w Snowflake

Czas na ćwiczenia!

Typy danych i funkcje w Snowflake

Preparing Video For Download...