Résumé : dans ce tutoriel, nous vous montrerons comment utiliser l’opérateur PostgreSQL CAST
pour convertir une valeur d’un type en un autre.
Introduction à l’opérateur PostgreSQL CAST
Il existe de nombreux cas où vous souhaitez convertir une valeur d’un type de données en un autre. PostgreSQL met à votre disposition l’opérateur CAST
qui vous permet de le faire.
Ce qui suit illustre la syntaxe du type CAST
:
Code language: SQL (Structured Query Language) (sql)
Dans cette syntaxe :
- D’abord, spécifiez une expression qui peut être une constante, une colonne de table, une expression qui s’évalue à une valeur.
- Puis, spécifiez le type de données cible vers lequel vous voulez convertir le résultat de l’expression.
PostgreSQL type cast : : operator
En plus de la syntaxe type CAST
, vous pouvez utiliser la syntaxe suivante pour convertir une valeur d’un type en un autre:
Code language: SQL (Structured Query Language) (sql)
Voir l’exemple suivant :
Code language: SQL (Structured Query Language) (sql)
Notez que la syntaxe cast avec l’opérateur cast (: 🙂 est spécifique à PostgreSQL et n’est pas conforme à la norme SQL
Exemples de CAST PostgreSQL
Prenons quelques exemples d’utilisation de l’opérateur CAST
pour convertir une valeur d’un type en un autre.
1) Conversion d’une chaîne de caractères en un nombre entier exemple
L’instruction suivante convertit une constante de chaîne de caractères en un nombre entier:
Code language: SQL (Structured Query Language) (sql)
Si l’expression ne peut pas être convertie dans le type cible, PostgreSQL lèvera une erreur. Voir l’exemple suivant:
Code language: SQL (Structured Query Language) (sql)
Code language: PHP (php)
2) Cast a string to a date example
Cet exemple utilise le CAST
pour convertir une chaîne en date:
Code language: SQL (Structured Query Language) (sql)
Premièrement, nous avons converti 2015-01-01
chaîne littérale en January 1st 2015
. Deuxièmement, nous avons converti 01-OCT-2015
en October 1st 2015
.
3) Conversion d’une chaîne de caractères en un double exemple
Dans l’exemple suivant, nous essayons de convertir une chaîne de caractères '10.2'
en une valeur double:
Code language: SQL (Structured Query Language) (sql)
Oops, nous avons obtenu le message d’erreur suivant:
Code language: PHP (php)
Pour corriger cela, vous devez utiliser DOUBLE PRECISION
au lieu de DOUBLE
comme suit :
Code language: SQL (Structured Query Language) (sql)
4) Conversion d’une chaîne de caractères en un booléen exemple
Cet exemple utilise le CAST()
pour convertir la chaîne de caractères ‘true’, ‘T’ en true et ‘false’, ‘F’ en false:
Code language: SQL (Structured Query Language) (sql)
Voici la sortie :
5) Convertir une chaîne de caractères en un horodatage exemple
Cet exemple utilise l’opérateur cast (: 🙂 pour convertir une chaîne de caractères en un horodatage:
Code language: SQL (Structured Query Language) (sql)
6) Convertir une chaîne de caractères en un intervalle exemple
Cet exemple utilise l’opérateur cast pour convertir une chaîne de caractères en un intervalle :
Code language: SQL (Structured Query Language) (sql)
Voici la sortie:
7) Utilisation de CAST avec des données de table exemple
D’abord, créez une table ratings
qui se compose de deux colonnes : id et rating. Le type de données de la colonne rating
est VARCHAR(1)
:
Code language: SQL (Structured Query Language) (sql)
Deuxièmement, insérez quelques données échantillons dans la table ratings
.
Code language: SQL (Structured Query Language) (sql)
Parce que les exigences changent, nous utilisons la même table ratings
pour stocker les notations sous forme de nombre, par ex, 1, 2, 3 au lieu de A, B, et C:
Code language: SQL (Structured Query Language) (sql)
Donc la table ratings
stocke des valeurs mixtes incluant des numériques et des chaînes de caractères.
Code language: SQL (Structured Query Language) (sql)
Maintenant, nous devons convertir toutes les valeurs de la colonne rating
en nombres entiers, toutes les autres évaluations A, B, C seront affichées comme zéro. Pour ce faire, vous utilisez l’expression CASE
avec le type CAST
comme indiqué dans la requête suivante :
Code language: SQL (Structured Query Language) (sql)
L’expression CASE
vérifie la cote, si elle correspond au motif entier, elle convertit la cote en un entier, sinon, elle renvoie 0.
Dans ce tutoriel, vous avez appris à utiliser PostgreSQL CAST
pour convertir une valeur d’un type à un autre.
- Ce tutoriel a-t-il été utile ?
- OuiNon
.