Types de données logiques¶
Cette rubrique décrit les types de données logiques pris en charge dans Snowflake.
Types de données¶
Snowflake prend en charge un seul type de données logique (BOOLEAN).
BOOLEAN¶
BOOLEAN peut avoir des valeurs TRUE ou FALSE. BOOLEAN peut également avoir une valeur UNKNOWN, représentée par NULL. Les colonnes BOOLEAN peuvent être utilisées dans les expressions (par exemple, une liste SELECT), ainsi que dans les prédicats (par exemple, la clause WHERE).
Le type de données BOOLEAN active la prise en charge de Logique ternaire.
Conversion en valeur BOOLEAN¶
Snowflake prend en charge la conversion en et depuis une valeur BOOLEAN.
Conversion en valeur BOOLEAN¶
Les valeurs autres que des valeurs BOOLEAN peuvent être converties en valeurs BOOLEAN de manière explicite ou implicite.
Conversion explicite¶
Vous pouvez convertir explicitement des chaînes de texte spécifiques et des valeurs numériques en valeurs BOOLEAN à l’aide des fonctions TO_BOOLEAN ou CAST :
- Conversion de chaînes:
Chaînes converties en TRUE :
'true','t','yes','y','on','1'.Chaînes converties en FALSE :
'false','f','no','n','off','0'.La conversion est insensible à la casse.
Les autres chaînes de texte ne peuvent pas être converties en valeurs BOOLEAN.
- Conversion numérique:
Zéro (
0) est converti en FALSE.Toute valeur autre que zéro est convertie en TRUE.
Conversion implicite¶
Snowflake peut convertir implicitement des chaînes de texte spécifiques et des valeurs numériques en valeurs BOOLEAN :
- Conversion de chaînes:
'true'est converti en TRUE.'false'est converti en FALSE.La conversion est insensible à la casse.
- Conversion numérique:
Zéro (
0) est converti en FALSE.Toute valeur autre que zéro est convertie en TRUE.
Conversion depuis BOOLEAN¶
Les valeurs BOOLEAN peuvent être converties en valeurs autres que des valeurs BOOLEAN de manière explicite ou implicite.
Conversion explicite¶
Vous pouvez explicitement convertir des valeurs BOOLEAN en chaînes de texte ou en valeurs numériques :
- Conversion de chaînes:
TRUE est converti en
'true'.FALSE est converti en
'false'.
- Conversion numérique:
TRUE est converti en
1.FALSE est converti en
0.
Conversion implicite¶
Snowflake peut convertir implicitement des valeurs BOOLEAN en valeurs de chaînes de texte :
- Conversion de chaînes:
TRUE est converti en
'true'.FALSE est converti en
'false'.
Exemples¶
Créer une table et insérer des valeurs :
La requête suivante contient une expression de type BOOLEAN :
L’exemple suivant utilise une colonne BOOLEAN dans les prédicats :
L’exemple suivant convertit une valeur de texte en valeur BOOLEAN. L’exemple utilise le SYSTEM$TYPEOF pour afficher le type de la valeur après la conversion.
L’exemple suivant convertit une valeur numérique en valeur BOOLEAN.
Dans cet exemple, Snowflake convertit implicitement une valeur BOOLEAN en valeur de texte :