Zusammenfassung der Funktionen

Snowflake unterstützt die meisten der in SQL:1999 definierten Standardoperatoren und Funktionen, aber auch Teile der in SQL:2003 definierten analytischen Erweiterungen.

Unter diesem Thema:

Skalarfunktionen

Kategorie/Unterkategorie

Funktionen

Bitweise Ausdrucksfunktionen

BITAND, BITNOT, BITOR, BITSHIFTLEFT, BITSHIFTRIGHT, BITXOR, GETBIT (siehe auch Bitweise Aggregationsfunktionen)

Funktionen für bedingte Ausdrücke

[ NOT ] BETWEEN, BOOLAND, BOOLNOT, BOOLOR, BOOLXOR, CASE, COALESCE, DECODE, EQUAL_NULL, GREATEST, IFF, IFNULL, [ NOT ] IN, IS [ NOT ] DISTINCT FROM, IS [ NOT ] NULL, IS_NULL_VALUE, LEAST, NULLIF, NVL, NVL2, REGR_VALX, REGR_VALY, ZEROIFNULL

Kontextfunktionen

Allgemeines

CURRENT_CLIENT, CURRENT_DATE, CURRENT_IP_ADDRESS, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_VERSION, LOCALTIME, LOCALTIMESTAMP, SYSDATE

Sitzung

ALL_USER_NAMES, CURRENT_ACCOUNT, CURRENT_ROLE, CURRENT_SESSION, CURRENT_STATEMENT, CURRENT_TRANSACTION, CURRENT_USER, LAST_QUERY_ID, LAST_TRANSACTION

Sitzungsobjekt

CURRENT_DATABASE, CURRENT_SCHEMA, CURRENT_SCHEMAS, CURRENT_WAREHOUSE, INVOKER_ROLE, INVOKER_SHARE, IS_GRANTED_TO_INVOKER_ROLE, IS_ROLE_IN_SESSION

Datengenerierungsfunktionen

RANDOM, SEQ1 / SEQ2 / SEQ4 / SEQ8, UUID_STRING

Numerische Funktionen

Arithmetik

DIV0

Runden und Kürzen

ABS, CEIL, FLOOR, MOD, ROUND, SIGN, TRUNC / TRUNCATE

Exponent und Wurzel

CBRT, EXP, POW / POWER, SQRT, SQUARE

Logarithmisch

LN, LOG

Trigonometrisch

ACOS, ACOSH, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, COT, DEGREES, HAVERSINE, PI, RADIANS, SIN, SINH, TAN, TANH

Zeichenfolgen- und Binärfunktionen

Allgemeines

ASCII, BIT_LENGTH, CHAR / CHR, CONCAT / ||, CONCAT_WS, INSERT, LENGTH, LEN, LPAD, LTRIM, OCTET_LENGTH, PARSE_IP, PARSE_URL, REPEAT, REVERSE, RPAD, RTRIM, RTRIMMED_LENGTH, SOUNDEX, SPACE, SPLIT, SPLIT_PART, SPLIT_TO_TABLE, STRTOK, STRTOK_TO_ARRAY, STRTOK_SPLIT_TO_TABLE, TRANSLATE, TRIM, UNICODE, UUID_STRING

Konvertierung der Groß-/Kleinschreibung

INITCAP, LOWER, UPPER

Abgleich mit regulären Ausdrücken; . (Zeichenfolgenfunktionen (reguläre Ausdrücke))

REGEXP, REGEXP_COUNT, REGEXP_INSTR, REGEXP_LIKE, REGEXP_REPLACE, REGEXP_SUBSTR, RLIKE

Sonstiger Abgleich/Vergleich

CHARINDEX, CONTAINS, EDITDISTANCE, ENDSWITH, ILIKE, ILIKE ANY, LEFT, LIKE, LIKE ALL, LIKE ANY, POSITION, REPLACE, RIGHT, STARTSWITH, SUBSTR , SUBSTRING

Komprimierung/Dekomprimierung

COMPRESS, DECOMPRESS_BINARY, DECOMPRESS_STRING

Codieren/Decodieren

BASE64_DECODE_BINARY, BASE64_DECODE_STRING, BASE64_ENCODE, HEX_DECODE_BINARY, HEX_DECODE_STRING, HEX_ENCODE, TRY_* (Decodierung von Binär- und Zeichenfolgenfunktionen)

Kryptografie/Prüfsumme

MD5 / MD5_HEX, MD5_BINARY, MD5_NUMBER_LOWER64, MD5_NUMBER_UPPER64, SHA1 / SHA1_HEX, SHA1_BINARY, SHA2 / SHA2_HEX, SHA2_BINARY

Verschlüsselung/Entschlüsselung

DECRYPT, DECRYPT_RAW, ENCRYPT, ENCRYPT_RAW

Hash (nicht kryptografisch)

HASH, HASH_AGG

Datums- und Uhrzeitfunktionen

Konstruktion

DATE_FROM_PARTS / DATEFROMPARTS , TIME_FROM_PARTS / TIMEFROMPARTS , TIMESTAMP_FROM_PARTS / TIMESTAMPFROMPARTS

Extraktion

DATE_PART, DAY, DAYNAME, DAYOFMONTH, DAYOFWEEK, DAYOFWEEKISO, DAYOFYEAR, EXTRACT, HOUR, LAST_DAY, MINUTE, MONTH, MONTHNAME, QUARTER, SECOND, WEEK, WEEKOFYEAR, WEEKISO, YEAR, YEAROFWEEK, YEAROFWEEKISO

Addition/Subtraktion

ADD_MONTHS, DATEADD, DATEDIFF, MONTHS_BETWEEN, TIMEADD, TIMEDIFF, TIMESTAMPADD, TIMESTAMPDIFF

Kürzen

DATE_TRUNC, TIME_SLICE, TRUNCATE , TRUNC

Typkonvertierung

TO_DATE , DATE, TO_TIME , TIME, TO_TIMESTAMP / TO_TIMESTAMP_*, TO_TIMESTAMP_* (LTZ | NTZ | TZ)

Zeitzone

CONVERT_TIMEZONE

Semistrukturierte Datenfunktionen

Analyse (Parsen)

ARRAYS_OVERLAP, CHECK_JSON, CHECK_XML, JSON_EXTRACT_PATH_TEXT, PARSE_JSON, PARSE_XML, STRIP_NULL_VALUE

Array und Objekt

ARRAY_AGG, ARRAY_APPEND, ARRAY_CAT, ARRAY_COMPACT, ARRAY_CONSTRUCT, ARRAY_CONSTRUCT_COMPACT, ARRAY_CONTAINS, ARRAY_INSERT, ARRAY_INTERSECTION, ARRAY_POSITION, ARRAY_PREPEND, ARRAY_SIZE, ARRAY_SLICE, ARRAY_TO_STRING, OBJECT_AGG, OBJECT_CONSTRUCT, OBJECT_CONSTRUCT_KEEP_NULL, OBJECT_DELETE, OBJECT_INSERT, OBJECT_PICK

Datenextraktion

FLATTEN, GET, GET_PATH , :, OBJECT_KEYS, XMLGET

Umwandlungen

AS_* (alle Datentypen), TO_ARRAY, TO_JSON, TO_OBJECT, TO_VARIANT, TO_XML

Typprädikate

IS_* (alle Datentypen), TYPEOF

Geodatenfunktionen

Analyse (Parsen)

TO_GEOGRAPHY, TRY_TO_GEOGRAPHY, ST_GEOGFROMGEOHASH, ST_GEOGPOINTFROMGEOHASH, ST_GEOGRAPHYFROMWKB, ST_GEOGRAPHYFROMWKT

Formatierung

ST_ASEWKB, ST_ASEWKT, ST_ASGEOJSON, ST_ASWKB / ST_ASBINARY, ST_ASWKT / ST_ASTEXT, ST_GEOHASH

Konstruktion

ST_MAKELINE, ST_MAKEPOINT / ST_POINT, ST_MAKEPOLYGON / ST_POLYGON

Accessor (Zugriffsmethode)

ST_DIMENSION, ST_SRID, ST_X, ST_XMAX, ST_XMIN, ST_Y, ST_YMAX, ST_YMIN

Beziehung/Messung

ST_AREA, ST_AZIMUTH, ST_CONTAINS, ST_COVEREDBY, ST_COVERS, ST_DISJOINT, ST_DISTANCE, ST_DWITHIN, ST_HAUSDORFFDISTANCE, ST_INTERSECTS, ST_LENGTH, ST_NPOINTS / ST_NUMPOINTS, ST_PERIMETER, ST_WITHIN

Transformation

ST_CENTROID, ST_COLLECT, ST_ENVELOPE – Veraltet, ST_SIMPLIFY

Konvertierungsfunktionen

CAST, ::, TO_* (alle unterstützten Snowflake-Datentypen), TRY_CAST, TRY_TO\_* (numerische, boolesche, Datums- und Zeitdatentypen)

Hilfsprogramm- und Hashfunktionen

Dienstprogramm

GET_DDL, HASH

Aggregatfunktionen

Kategorie/Unterkategorie

Funktionen

Aggregatfunktionen

Allgemeines

ANY_VALUE, AVG, CORR, COUNT, COUNT_IF, COVAR_POP, COVAR_SAMP, HASH_AGG, LISTAGG, MAX, MEDIAN, MIN / MAX, MODE, PERCENTILE_CONT, PERCENTILE_DISC, STDDEV / STDDEV_POP, STDDEV_SAMP, SUM, VAR_POP / VARIANCE_POP, VAR_SAMP / VARIANCE_SAMP / VARIANCE

Reihenfolge-abhängig . (Fensterfunktionen)

CUME_DIST, DENSE_RANK, FIRST_VALUE, LAG, LAST_VALUE, LEAD, NTH_VALUE, NTILE, PERCENT_RANK, RANK, ROW_NUMBER, WIDTH_BUCKET

Bitweise

BITAND_AGG, BITOR_AGG, BITXOR_AGG

Boolesch

BOOLAND_AGG, BOOLOR_AGG, BOOLXOR_AGG

Hash

HASH_AGG

Semistrukturierte Daten

ARRAY_AGG, OBJECT_AGG

Lineare Regression

REGR_AVGX, REGR_AVGY, REGR_COUNT, REGR_INTERCEPT, REGR_R2, REGR_SLOPE, REGR_SXX, REGR_SXY, REGR_SYY

Statistik und Wahrscheinlichkeit

KURTOSIS, SKEW

Kardinalitätsschätzung

APPROX_COUNT_DISTINCT, HLL, HLL_ACCUMULATE, HLL_COMBINE, HLL_ESTIMATE, HLL_EXPORT, HLL_IMPORT

Ähnlichkeitsschätzung

APPROXIMATE_JACCARD_INDEX, APPROXIMATE_SIMILARITY, MINHASH, MINHASH_COMBINE

Häufigkeitsschätzung

APPROX_TOP_K, APPROX_TOP_K_ACCUMULATE, APPROX_TOP_K_COMBINE, APPROX_TOP_K_ESTIMATE

Perzentilschätzung

APPROX_PERCENTILE, APPROX_PERCENTILE_ACCUMULATE, APPROX_PERCENTILE_COMBINE, APPROX_PERCENTILE_ESTIMATE

Aggregations-Dienstprogramme

GROUPING, GROUPING_ID

Fensterfunktionen

Fensterfunktionen sind Aggregatfunktionen, die eine Teilmenge von Zeilen innerhalb der Menge von Eingabezeilen bearbeiten können.

Tabellenfunktionen

Kategorie/Unterkategorie

Funktionen

Allgemeines

Laden von Daten

VALIDATE

Datengenerierung

GENERATOR

Objektmodellierung

GET_OBJECT_REFERENCES

Semistrukturierte Abfragen

FLATTEN

Abfrageergebnisse

RESULT_SCAN

Verlaufs- und Nutzungsinformationen . (Information Schema)

Abfragen

QUERY_HISTORY, QUERY_HISTORY_BY_* (SESSION | USER | WAREHOUSE), EXTERNAL_FUNCTIONS_HISTORY

Warehouse- und Speichernutzung

DATABASE_STORAGE_USAGE_HISTORY, STAGE_STORAGE_USAGE_HISTORY, WAREHOUSE_METERING_HISTORY

Sicherheit auf Spaltenebene und Zeilenzugriffsrichtlinien

POLICY_REFERENCES

Laden von Daten und Datenübertragung

COPY_HISTORY, DATA_TRANSFER_HISTORY, PIPE_USAGE_HISTORY

SCIM

REST_EVENT_HISTORY

Benutzeranmeldung

LOGIN_HISTORY, LOGIN_HISTORY_BY_USER

Verwaltung der Suchoptimierung

SEARCH_OPTIMIZATION_HISTORY

Benutzerdefinierte Funktionen (UDFs)

Zusätzlich zu den vom System definierten Funktionen von Snowflake können Benutzer eigene Funktionen erstellen. Snowflake unterstützt die folgenden Typen von UDFs:

Typ

Anmerkungen

SQL

SQL-UDFs können definiert werden, um entweder eine skalare oder eine tabellarische Ausgabe zurückzugeben.

JavaScript

JavaScript-UDFs können definiert werden, um entweder eine skalare oder eine tabellarische Ausgabe zurückzugeben.

Externe Funktionen

Snowflake unterstützt auch Externe Funktionen, die außerhalb von Snowflake gespeichert und ausgeführt werden.