Typy danych i funkcje w Snowflake
Jake Roach
Field Data Engineer
$$
NUMBER
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
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ę
-- Precyzja: 3, Skala: 0
NUMBER(3, 0)
42 -- Poprawne!
1000 -- Nie mieści się
41.99 -- Nie mieści się
$$
$$
NUMBER to NUMBER(38, 0)CREATE TABLE sales ( id NUMBER, -- Tradycyjne dane numeryczneprice NUMBER(5, 2), -- Kwoty do $999.99quantity 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 | ...
$$
$$
0.0000000120056
CREATE TABLE metrics (
id NUMBER,
accuracy FLOAT
);
DESCRIBE TABLE schema.table;
name | type | ...
---------- | -------------- | ---
id | NUMBER(38,0) | ...
accuracy | FLOAT | ...
$$
=, !=, <, >.+, -, /, *.SUM, AVG, COUNT.MEDIAN, STDDEV, CORR.$$
Typy danych i funkcje w Snowflake