SnowConvert AI - BigQuery - Fonctions intégrées¶
Référence de traduction pour toutes les fonctions intégrées prises en charge par SnowConvert AI pour BigQuery.
Note
Pour plus d’informations sur les fonctions intégrées et leurs équivalents Snowflake, voir également Fonctions intégrées communes.
Fonctions d’agrégation¶
BigQuery |
Snowflake |
|---|---|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/any_value »>ANY_VALUE</a><br><br><em>Remarque : Contrairement à BigQuery, Snowflake n’ignore pas NULLs. De plus, la clause <code>OVER()</code> de Snowflake ne prend pas en charge l’utilisation de <code>ORDER BY</code> ou des cadres de fenêtres explicites.</em></p> |
|
ANY_VALUE( expr1, HAVING MAX expr2) |
|
Fonctions de tableau¶
BigQuery |
Snowflake |
|---|---|
ARRAY_TO_STRING(expr, delimiter) |
ARRAY_TO_STRING(ARRAY_COMPACT(expr), delimiter) |
ARRAY_TO_STRING(expr, delimiter, null_text) |
<p>ARRAY_TO_STRING_UDF(expr, delimiter, null_text)<br><br><em>Remarques : SnowConvert AI génère une UDF pour gérer le paramètre de remplacement NULL qui n’est pas pris en charge nativement par la fonction ARRAY_TO_STRING de Snowflake.</em></p> |
SELECT ARRAY (requête SELECT) |
<p>SELECT (SELECT ARRAY_AGG(*) FROM (requête SELECT)).<br><br><em>Remarques : Dans BigQuery la syntaxe de sous-requête ARRAY est transformée pour utiliser ARRAY_AGG avec une sous-requête dans Snowflake.</em></p> |
Expressions conditionnelles¶
| BigQuery | Snowflake |
|---|---|
| COALESCE | COALESCE |
| IF | IFF |
| IFNULL | IFNULL |
| NULLIF | NULLIF |
Fonctions de conversion¶
BigQuery |
Snowflake |
|---|---|
Fonctions de date¶
BigQuery |
Snowflake |
|---|---|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/to_char »>TO_CHAR</a><br><br><em>Remarque : Pour plus de détails sur cette traduction, veuillez consulter cette </em> <a href= »format_date.md »><em>page</em></a><em>.</em></p> |
Fonctions d’horodatage¶
BigQuery |
Snowflake |
|---|---|
CURRENT_TIMESTAMP :: TIMESTAMP_NTZ |
Fonctions de géographie¶
BigQuery |
Snowflake |
|---|---|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/st_geographyfromwkt »>ST_GEOGFROMTEXT</a><br><br><em>Remarque : Pour plus de détails sur cette traduction, veuillez consulter cette </em> <a href= »st_geogfromtext.md »><em>page</em></a><em>.</em></p> |
|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/st_makepoint »>ST_POINT</a><br><br><em>Remarque : Pour plus de détails sur cette traduction, veuillez consulter cette </em> <a href= »st_geogpoint.md »><em>page</em></a><em>.</em></p> |
Fonctions JSON¶
BigQuery |
Snowflake |
|---|---|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/json_extract_path_text »>JSON_EXTRACT_PATH_TEXT</a><br></p><p><em>Remarques : SnowConvert AI traduit automatiquement les chemins BigQuery JSON vers leurs équivalents Snowflake.</em></p> |
|
<p>JSON_VALUE_ARRAY_UDF<br><br><em>Remarques : SnowConvert AI génère une UDF pour obtenir un comportement équivalent pour l’extraction de tableaux à partir de JSON.</em></p> |
|
<p>PUBLIC.LAX_INT64_UDF<br><br><em>Remarques : SnowConvert AI génère une UDF pour obtenir un comportement équivalent.</em></p> |
|
<p>PUBLIC.LAX_BOOL_UDF<br><br><em>Remarques : SnowConvert AI génère une UDF pour obtenir un comportement équivalent.</em></p> |
Fonctions mathématiques¶
BigQuery |
Snowflake |
|---|---|
[ABS](https://cloud.google.com/bigquery/docs/reference/standard-sql/mathe suspension_functions#abs) |
|
ROUND(X) |
ROUND(X) |
Fonctions de numérotation¶
BigQuery |
Snowflake |
|---|---|
Fonctions de chaîne de caractères¶
BigQuery |
Snowflake |
|---|---|
BYTE_LENGTH(expr) |
<p>LENGTH(TO_BINARY(HEX_ENCODE(expr))<br><br><em>Remarques : dans BigQuery, BYTE_LENGTH renvoie le nombre d’octets dans une chaîne codée. L’équivalent Snowflake convertit en binaire après l’encodage hexadécimal pour obtenir la longueur des octets.</em></p> |
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/try_base64_decode_binary »>TRY_BASE64_DECODE_BINARY</a><br><br><em>Remarques : BigQuery utilise BASE64 par défaut pour la sortie de données binaires, mais Snowflake utilise HEX. Dans Snowflake, vous pouvez utiliser la fonction </em> <a href= »https://docs.snowflake.com/en/sql-reference/functions/base64_encode »><em><code>BASE64_ENCODE</code></em></a> <em> ou définir </em> <a href= »https://docs.snowflake.com/en/sql-reference/parameters#binary-output-format »><em><code>BINARY_OUTPUT_FORMAT</code></em></a> <em>sur <code>”BASE64”</code> pour afficher des données binaires dans BASE64.</em></p> |
|
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/try_hex_decode_binary »>TRY_HEX_DECODE_BINARY</a><br><br><em>Remarques : BigQuery utilise BASE64 par défaut pour la sortie de données binaires, mais Snowflake utilise HEX. Dans Snowflake, vous pouvez utiliser la fonction </em> <a href= »https://docs.snowflake.com/en/sql-reference/functions/base64_encode »><em><code>BASE64_ENCODE</code></em></a> <em> ou définir </em> <a href= »https://docs.snowflake.com/en/sql-reference/parameters#binary-output-format »><em><code>BINARY_OUTPUT_FORMAT</code></em></a> <em>sur <code>”BASE64”</code> pour afficher des données binaires dans BASE64.</em></p> |
|
REGEXP_CONTAINS(valeur, regexp) |
REGEXP_INSTR(valeur, regexp) > 0 |
<p><a href= »https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#substr »>SUBSTR</a>(chaîne, position)<br><br><a href= »https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#substring »>SUBSTRING</a>(chaîne, position)<br><br><a href= »https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#substr »>SUBSTR</a>(chaîne, position, longueur)<br><br><a href= »https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#substring »>SUBSTRING</a>(chaîne, position, longueur)</p> |
<p><a href= »https://docs.snowflake.com/en/sql-reference/functions/substr »>SUBSTR</a>(chaîne, IFF(position #x3C; -LENGTH(chaîne), 1, position)).<br><br><a href= »https://docs.snowflake.com/en/sql-reference/functions/substr »>SUBSTRING</a>(chaîne, IFF(position #x3C; -LENGTH(chaîne), 1, position)).<br><br><a href= »https://docs.snowflake.com/en/sql-reference/functions/substr »>SUBSTR</a>(chaîne, IFF(position #x3C; -LENGTH(chaîne), 1, position), longueur)<br><br><a href= »https://docs.snowflake.com/en/sql-reference/functions/substr »>SUBSTRING</a>(chaîne, IFF(position #x3C; -LENGTH(chaîne), 1, position), longueur)</p> |
Fonctions d’horodatage¶
BigQuery |
Snowflake |
|---|---|
<p>IFF(expr BETWEEN -62135596800000 AND 253402300799999, TO_TIMESTAMP(expr / 1000), null)<br><br><em>Remarques : Version sûre avec validation de plage pour éviter les erreurs de débordement.</em></p> |
|
<p>SAFE_TIMESTAMP_SECONDS_UDF(expr)<br><br><em>Remarques : SnowConvert AI génère une UDF pour fournir une conversion d’horodatage sûre avec un traitement des erreurs.</em></p> |
|
<p>TO_TIMESTAMP(expr / 1000)<br><br><em>Remarques : Convertit les millisecondes depuis l’epoch vers l’horodatage en divisant par 1 000.</em></p> |
|
TIMESTAMP_SECONDS(expr) |
<p>DATEADD(“secondes”, expr., “1970-01-01”)<br><br><em>Remarques : Ajoute des secondes à la date de début de l’epoch Unix.</em></p> |
UNIX_MICROS(horodatage) |
<p>DATE_PART(“epoch_microseconde”, CONVERT_TIMEZONE(“UTC”, horodatage))<br><br><em>Remarques : Extrait les microsecondes depuis l’epoch Unix de l’horodatage converti en UTC.</em></p> |
[UNIX_MILLIS](https://cloud.google.com/bigquery/docs/reference/standard-sql/timestamp_functions#unix_ millilis)(horodatage) |
<p>DATE_PART(“epoch_milliseconde”, CONVERT_TIMEZONE(“UTC”, horodatage))<br><br><em>Remarques : Extrait les millisecondes depuis l’epoch Unix de l’horodatage converti en UTC.</em></p> |
UNIX_SECONDS(horodatage) |
<p>DATE_PART(« epoch_secondes », CONVERT_TIMEZONE(“UTC”, horodatage))<br><br><em>Remarques : Extrait les secondes depuis l’epoch Unix de l’horodatage converti en UTC.</em></p> |
FORMAT_DATE¶
Fonction Format_date
Description¶
Formate une valeur DATE en fonction d’une chaîne de format spécifiée.
Pour plus d’informations, voir la fonction FORMAT_DATE.
Grammar Syntax¶
FORMAT_DATE(format_string, date_expr)
Source exemple¶
BigQuery¶
CREATE TABLE TEST_DATE (col1 DATE);
SELECT FORMAT_DATE('%Y', col1);
Snowflake¶
CREATE TABLE TEST_DATE (col1 DATE);
SELECT
TO_CHAR(col1, 'YYYY')
FROM
TEST_DATE;
Formats équivalents BigQuery¶
| BigQuery | Snowflake |
|---|---|
| %A | PUBLIC.DAYNAME_LONG_UDF(date_expr) Note: Generate UDF in conversion for support. |
| %a | DY |
| %B | MMMM |
| %b | MON |
| %C | PUBLIC.CENTURY_UDF(date_expr) Note: Generate UDF in conversion for support. |
| %c | DY MON DD HH24:MI:SS YYYY |
| %D | MM/DD/YY |
| %d | DD |
| %e | DD |
| %F | YYYY-MM-DD |
| %G | YEAROFWEEKISO(date_expr) |
| %g | PUBLIC.ISO_YEAR_PART_UDF(date_expr, 2) Note: Generate UDF in conversion for support. |
| %H | HH24 |
| %h | MON |
| %I | HH12 |
| %J | PUBLIC.DAY_OF_YEAR_ISO_UDF(date_expr) Note: Generate UDF in conversion for support. |
| %j | DAYOFYEAR(date_expr) |
| %k | HH24 |
| %l | HH12 |
| %M | MI |
| %m | MM |
| %n | Not equivalent format |
| %P | pm |
| %p | AM |
| %Q | QUARTER(date_expr) |
| %R | HH24:MI |
| %S | SS |
| %s | Not equivalent format |
| %T | HH24:MI:SS |
| %t | Not equivalent format |
| %U | WEEK(date_expr) |
| %u | DAYOFWEEKISO(date_expr) |
| %V | WEEKISO(date_expr) |
| %W | WEEK(date_expr) Note: Unlike BigQuery, Snowflake results are dictated by the values set for the WEEK_OF_YEAR_POLICY and/or WEEK_START session parameters. So, results could differ from BigQuery based on those parameters. |
| %w | DAYOFWEEK(date_expr) Note: Unlike BigQuery, Snowflake results are dictated by the values set for the WEEK_OF_YEAR_POLICY and/or WEEK_START session parameters. So, results could differ from BigQuery based on those parameters. |
| %X | HH24:MI:SS |
| %x | MM/DD/YY |
| %Y | YYYY |
| %y | YY |
| %Z | Not equivalent format |
| %z | Not equivalent format |
| %Ez | Not equivalent format |
| %E<number>S | Not equivalent format |
| %E*S | Not equivalent format |
| %EY4 | YYYY |
Avertissement
Dans BigQuery, le format relatif à l’heure n’est pas appliqué lorsque le type est DATE, mais Snowflake applique le format avec des valeurs en zéro pour les utilisations HH:MI:SS.
Note
Pour plus d’informations, voir Formats BigQuery DateTime.
ST_GEOGFROMTEXT¶
Fonction géographique.
Description¶
Renvoie une valeur
GEOGRAPHYqui correspond à la représentation WKT entrée.
Pour plus d’informations, voir ST_GEOGFROMTEXT function.
SuccessPlaceholder
La fonction ST_GEOGFROMTEXT est prise en charge dans Snowflake.
Grammar Syntax¶
ST_GEOGFROMTEXT(wkt_string[, oriented])
Source exemple¶
Le paramètre orienté dans la fonction ST_GEOGFROMTEXT n’est pas prise en charge dans Snowflake.
BigQuery¶
SELECT ST_GEOGFROMTEXT('POINT(-122.35 37.55)');
SELECT ST_GEOGFROMTEXT('POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))', TRUE);
Snowflake¶
SELECT ST_GEOGFROMTEXT('POINT(-122.35 37.55)');
SELECT
!!!RESOLVE EWI!!! /*** SSC-EWI-BQ0006 - ORIENTED PARAMETER IN THE ST_GEOGFROMTEXT FUNCTION IS NOT SUPPORTED IN SNOWFLAKE. ***/!!!
ST_GEOGFROMTEXT('POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))');
N’oubliez pas que le format de sortie par défaut pour les types de données géographiques est le suivant : WKT (texte bien connu) et dans Snowflake WKB (binaire bien connu). Vous pouvez utiliser la fonction ST_ASWKT ou appliquer le format GEOGRAPHY_OUTPUT_FORMAT si vous souhaitez afficher les données dans le format WKT.
Utiliser la fonction ST_GEOGFROMTEXT pour l’insertion de données géographiques¶
Cette fonction n’est pas autorisée dans la clause des valeurs et n’est pas requise dans Snowflake.
BigQuery¶
CREATE OR REPLACE TABLE test.geographyType
(
COL1 GEOGRAPHY
);
INSERT INTO test.geographyType VALUES
(ST_GEOGFROMTEXT('POINT(-122.35 37.55)')),
(ST_GEOGFROMTEXT('LINESTRING(-124.20 42.00, -120.01 41.99)'));
Snowflake¶
CREATE OR REPLACE TABLE test.geographyType
(
COL1 GEOGRAPHY
);
INSERT INTO test.geographyType
VALUES
(
--** SSC-FDM-BQ0010 - THE FUNCTION 'ST_GEOGFROMTEXT' IS NOT REQUIRED IN SNOWFLAKE. **
'POINT(-122.35 37.55)'),
(
--** SSC-FDM-BQ0010 - THE FUNCTION 'ST_GEOGFROMTEXT' IS NOT REQUIRED IN SNOWFLAKE. **
'LINESTRING(-124.20 42.00, -120.01 41.99)');
ST_GEOGPOINT¶
Fonction géographique.
Description¶
Crée une
GEOGRAPHYavec un seul point.ST_GEOGPOINTcrée un point à partir de la longitudeFLOAT64spécifiée (en degrés, négatif à l’ouest du Premier méridien, positif à l’est) et de la latitude (en degrés, positif au nord de l’équateur, négatif au sud) et renvoie ce point dans une valeurGEOGRAPHY.
Pour plus d’informations, voir ST_GEOGPOINT fonction.#x20;
Note
La fonction ST_GEOGPOINT est traduite en ST_POINT dans Snowflake
Grammar Syntax¶
ST_GEOGPOINT(longitude, latitude)
Source exemple¶
BigQuery¶
SELECT ST_GEOGPOINT(-122.0838, 37.3860);
Snowflake¶
SELECT ST_POINT(-122.0838, 37.3860);
N’oubliez pas que le format de sortie par défaut pour les types de données géographiques est le suivant : WKT (texte bien connu) et dans Snowflake WKB (binaire bien connu). Vous pouvez utiliser la fonction ST_ASWKT ou appliquer le format GEOGRAPHY_OUTPUT_FORMAT si vous souhaitez afficher les données dans le format WKT.
Utiliser la fonction ST_POINT pour l’insertion de données géographiques¶
Cette fonction n’est pas autorisée dans la clause des valeurs et n’est pas requise dans Snowflake.
BigQuery¶
CREATE OR REPLACE TABLE test.geographyType
(
COL1 GEOGRAPHY
);
INSERT INTO test.geographyType
VALUES (ST_GEOGPOINT(-122.0838, 37.3860));
Snowflake¶
CREATE OR REPLACE TABLE test.geographyType
(
COL1 GEOGRAPHY
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "bigquery", "convertedOn": "04/03/2025", "domain": "test" }}';
INSERT INTO test.geographyType
VALUES (
--** SSC-FDM-BQ0010 - THE FUNCTION 'ST_GEOGFROMTEXT' IS NOT REQUIRED IN SNOWFLAKE. **
'POINT(122.0838 37.3860)');
EWI connexes¶
SSC-FDM-BQ0010: La fonction géographique n’est pas requise dans Snowflake.