Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Prise en charge des types de données par le moteur SQL
AWS Clean Rooms prend en charge plusieurs moteurs et dialectes SQL. Comprendre les systèmes de types de données dans ces implémentations est essentiel pour une collaboration et une analyse de données réussies. Les tableaux suivants présentent les types de données équivalents dans AWS Clean Rooms SQL, Snowflake SQL et Spark SQL.
Types de données numériques
Les types numériques représentent différents types de nombres, des nombres entiers précis aux valeurs approximatives à virgule flottante. Le choix du type numérique influe à la fois sur les exigences de stockage et sur la précision des calculs. Les types entiers varient en fonction de la taille des octets, tandis que les types décimaux et à virgule flottante offrent différentes options de précision et d'échelle.
| Type de données | AWS Clean Rooms SQL | Snowflake SQL | SQL Spark | Description |
|---|---|---|---|---|
| Entier de 8 octets | BIGINT | Non pris en charge | GROS, LONG | Entiers signés compris entre -9,223,372 036 854 775 808 et 9 223 372 036 854 775 807. |
| Entier de 4 octets | INT | Non pris en charge | INT, ENTIER | Entiers signés compris entre -2 147 483 648 et 2 147 483 647 |
| Entier de 2 octets | SMALLINT | Non pris en charge | SMALL INT, SHORT | Entiers signés compris entre -32 768 et 32 767 |
| Entier sur 1 octet | Non pris en charge | Non pris en charge | TINYINT, OCTET | Entiers signés compris entre -128 et 127 |
| Flotteur à double précision | DOUBLE, DOUBLE PRÉCISION | FLOAT FLOAT4, FLOAT8, DOUBLE, DOUBLE PRÉCISION, RÉEL | DOUBLE | Numéros à virgule flottante à double précision sur 8 octets |
| Flotteur de précision unique | RÉEL, FLOTTANT | Non pris en charge | FLOAT | Numéros à virgule flottante à précision unique sur 4 octets |
| Décimal (précision fixe) | DECIMAL | DÉCIMAL, NUMÉRIQUE, NOMBRENoteSnowflake aliase automatiquement les types numériques exacts de plus petite largeur (INT, BIGINT, SMALLINT, etc.) en NUMBER. |
DÉCIMAL, NUMÉRIQUE, | Nombres décimaux signés avec une précision arbitraire |
| Décimal (avec précision) | DÉCIMAL (p) | DÉCIMAL (p), NOMBRE (p) | DÉCIMAL (p) | Nombres décimaux à précision fixe |
| Décimal (avec échelle) | DECIMAL(p,s) | DÉCIMAL (p, s), NOMBRE (p, s) | DECIMAL(p,s) | Nombres décimaux à précision fixe avec échelle |
Types de données booléennes
Les types booléens représentent des valeurs true/false logiques simples. Ces types sont cohérents dans tous les moteurs SQL et sont couramment utilisés pour les indicateurs, les conditions et les opérations logiques.
| Type de données | AWS Clean Rooms SQL | Snowflake SQL | SQL Spark | Description |
|---|---|---|---|---|
| Booléen | BOOLEAN | BOOLEAN | BOOLEAN | Représente true/false des valeurs |
Types de données de date et d’heure
Les types de date et d'heure traitent des données temporelles, avec différents niveaux de précision et de connaissance du fuseau horaire. Ces types prennent en charge différents formats pour le stockage des dates, des heures et des horodatages, avec des options permettant d'inclure ou d'exclure les informations de fuseau horaire.
| Type de données | AWS Clean Rooms SQL | Snowflake SQL | SQL Spark | Description |
|---|---|---|---|---|
| Date | DATE | DATE | DATE | Valeurs de date (année, mois, jour) sans fuseau horaire |
| Heure | TIME | Non pris en charge | Non pris en charge | Heure du jour en UTC, sans fuseau horaire |
| Temps passé avec TZ | TIMETZ | Non pris en charge | Non pris en charge | Heure du jour en UTC, avec fuseau horaire |
| Horodatage | TIMESTAMP | HORODATAGE, TIMESTAMP_NTZ | TIMESTAMP_NTZ | Horodatage sans fuseau horaireNoteNTZ indique « Pas de fuseau horaire » |
| Horodatage avec TZ | TIMESTAMPTZ | TIMESTAMP_LTZ | HORODATAGE, TIMESTAMP_LTZ | Horodatage avec fuseau horaire localNoteLTZ indique le « fuseau horaire local » |
Types de données de caractères
Les types de caractères stockent des données textuelles, offrant à la fois des options de longueur fixe et de longueur variable. Ces types gèrent les chaînes de texte et les données binaires, avec des spécifications de longueur facultatives pour contrôler l'allocation de stockage.
| Type de données | AWS Clean Rooms SQL | Snowflake SQL | SQL Spark | Description |
|---|---|---|---|---|
| Caractère de longueur fixe | CHAR | CHAR, CARACTÈRE | CHAR, CARACTÈRE | Chaîne de caractères de longueur fixe |
| Caractère de longueur fixe avec longueur | CHAR(n) | CARACTÈRE (n), CARACTÈRE (n) | CARACTÈRE (n), CARACTÈRE (n) | Chaîne de caractères de longueur fixe avec une longueur spécifiée |
| Caractère de longueur variable | VARCHAR | VARCHAR, CHAÎNE, TEXTE | VARCHAR, CHAÎNE | Chaîne de caractères de longueur variable |
| Caractère de longueur variable avec longueur | VARCHAR(n) | VARCHAR (n), CHAÎNE (n), TEXTE (n) | VARCHAR(n) | Chaîne de caractères de longueur variable avec limite de longueur |
| Binaire | VARBYTE | BINARY, VARBINARY | BINAIRE | Séquence d'octets binaires |
| Binaire avec longueur | VARBYTE(n) | Non pris en charge | Non pris en charge | Séquence d'octets binaires avec limite de longueur |
Types de données structurées
Les types structurés permettent une organisation complexe des données en combinant plusieurs valeurs dans des champs uniques. Il s'agit notamment de tableaux pour les collections ordonnées, de cartes pour les paires clé-valeur et de structures pour créer des structures de données personnalisées avec des champs nommés.
| Type de données | AWS Clean Rooms SQL | Snowflake SQL | SQL Spark | Description |
|---|---|---|---|---|
| Tableau | MATRICE <type> | TABLEAU (type) | MATRICE <type> | Séquence ordonnée d'éléments du même typeNoteLes types de tableaux doivent contenir des éléments du même type |
| Map | CARTE<key, value> | MAP (clé, valeur) | CARTE<key, value> | Collection de paires clé-valeurNoteLes types de cartes doivent contenir des éléments du même type |
| Struct | STRUCTURE< field1 : type1, field2 : type2> | OBJET (champ1 type1, champ2 type2) | STRUCTURE< field1 : type1, field2 : type2 > | Structure avec champs nommés de types spécifiésNoteLa syntaxe des types structurés peut varier légèrement entre les implémentations |
| Super | SUPER | Non pris en charge | Non pris en charge | Type flexible supportant tous les types de données, y compris les types complexes |