Conversion d'entiers en caractères en SQL

SQL est un langage de programmation largement utilisé pour les bases de données informatiques en entreprise. Les développeurs de logiciels doivent fréquemment combiner différents types de données, telles que des champs de nombre entier et de caractères, en un seul élément pour les imprimer ou les afficher. Une approche commune pour y parvenir implique la conversion de nombres entiers en données de caractères; une fois convertis, plusieurs éléments de caractères se combinent facilement pour créer un champ plus grand. SQL possède plusieurs fonctions intégrées avec lesquelles vous pouvez convertir des entiers en données de caractères.

STR ()

La fonction STR () prend un nombre et le transforme en caractères, comme le montre l'exemple suivant:

SELECT nom_élément, STR (quantité_article) FROM éléments;

Cette instruction SQL répertorie le nom et la quantité d'un article séparément, chacun avec son propre en-tête. Vous pouvez combiner les deux éléments en un seul:

SELECT nom_élément || '' || STR (item_quantity) FROM items;

Cette instruction SELECT répertorie un seul champ pour chaque enregistrement. Un espace entre le nom et la quantité de l'article sépare les deux articles, ce qui facilite la lecture du champ combiné. Le SQL standard utilise deux symboles de barre verticale, “||”, pour concaténer ou combiner deux ou plusieurs éléments de caractère. Microsoft SQL Server utilise pour cela le symbole plus "+". Bien que la fonction STR accepte les nombres avec des décimales, elle fonctionne aussi bien avec les entiers. L'exemple suivant montre un SELECT qui répertorie deux nombres, le premier étant un chiffre en dollars ayant cinq chiffres de gauche et deux décimales, le second un entier:

SELECT STR (item_cost, 8, 2) || '' || STR (item_quantity) FROM items;

Notez que le premier élément a une longueur totale de huit caractères: cinq chiffres de gauche, une décimale et deux chiffres décimaux.

CONVERTIR()

La fonction CONVERT () est plus sophistiquée que STR (); il convertit entre les caractères, les nombres et les dates dans différents formats. Cela fonctionne aussi bien que STR () pour changer les entiers en données de caractères. Une instruction SQL utilisant CONVERT () ressemble à ceci:

SELECT item_name, CONVERT (CHAR (8), item_quantity) FROM items;

Dans cette instruction, CONVERT () convertit le nombre entier contenu dans "item_quantity" en un élément de données de huit caractères. Au lieu du type de données CHAR, vous pouvez utiliser VARCHAR pour les données de caractères de longueur variable, NCHAR pour les données Unicode internationales ou NVARCHAR pour les Unicode de longueur variable.

JETER()

La fonction CAST () de SQL est similaire à CONVERT (); il manque les capacités de formatage de date que CONVERT () a, mais fonctionne autrement de la même manière. L'instruction SQL suivante convertit les données entières en caractères à l'aide de CAST ():

SELECT nom_élément, CAST (quantité_ item AS CHAR (8)) FROM éléments;

Comme avec CONVERT (), CAST () peut utiliser n’importe quel type de données recevant des caractères: VARCHAR, NCHAR et NVARCHAR.

SQLite

Le système de base de données SQLite, utilisé dans les smartphones et les applications PC autonomes, traite ses champs de données différemment des autres bases de données commerciales. SQLite vous permet de stocker des données de caractères dans un champ défini pour les entiers, et inversement. Bien que SQLite ne dispose pas des fonctions STR () et CONVERT (), il offre CAST () pour convertir des entiers en données de caractères.

Recommandé