Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonction de conversion MySQL

Parfois, vous devrez peut-être convertir des données dans MySQL ou saisir des données de conversion dans MySQL. Voici comment convertir des données d'un type de données à un autre à l'aide de la fonction MySQL CONVERT. Il peut également être utilisé pour convertir des données d'un jeu de caractères à un autre.

Comment convertir des données dans MySQL

Voici les étapes pour convertir des données dans MySQL à l'aide de la fonction MySQL CONVERT. Voici la syntaxe de la fonction MySQL CONVERT

CONVERT(input_value, data_type)

Dans la fonction ci-dessus, vous devez fournir input_value en tant que chaîne littérale ou nom de colonne, et data_type vers lequel vous souhaitez convertir ces données. Comme MySQL CAST, vous pouvez convertir des données en types de données BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.

Par exemple, voici comment convertir une valeur littérale en un autre type de données

CONVERT(1, char)

et voici comment convertir une colonne (par exemple id) en un autre type de données

CONVERT(id, char)

Voici la syntaxe MySQL CONVERT pour convertir les jeux de caractères

CONVERT(input_value USING character_set)

Dans la fonction ci-dessus, vous devez fournir input_value en tant que chaîne littérale ou nom de colonne, et character_set vers lequel vous souhaitez convertir ces données.

Voici un exemple de comment caster en latin1

mysql> select convert('test string' using 'latin1');
+---------------------------------------+
| convert('test string' using 'latin1') |
+---------------------------------------+
| test string                           |
+---------------------------------------+

Lecture bonus :Comment taper Cast dans MySQL

Exemples de conversion MySQL

Regardons quelques exemples de la fonction MySQL CONVERT.

Convertir la chaîne MySQL à ce jour

Voici comment convertir une chaîne en date

mysql> select convert('2020-08-01',date);
+----------------------------+
| convert('2020-08-01',date) |
+----------------------------+
| 2020-08-01                 |
+----------------------------+

Lecture bonus :Requête de restauration MySQL

MySQL CONVERT Chaîne en décimal

Voici comment convertir une chaîne en décimal

mysql> select convert('1.234',decimal(4,3));
+-------------------------------+
| convert('1.234',decimal(4,3)) |
+-------------------------------+
| 1.234                         |
+-------------------------------+

Lecture bonus :Comment utiliser MySQL Rollup

Convertir la chaîne MySQL en double

MySQL ne prend pas en charge la conversion en type de données double. Vous devrez convertir la chaîne en décimal.

mysql> select convert('2.134',decimal(4,3));
+-------------------------------+
| convert('2.134',decimal(4,3)) |
+-------------------------------+
| 2.134                         |
+-------------------------------+

MySQL CONVERT String to Float

Encore une fois, MySQL ne prend pas en charge la conversion en type de données à virgule flottante. Vous devrez convertir la chaîne en décimal.

mysql> select convert('2.134',decimal(4,3));
+-------------------------------+
| convert('2.134',decimal(4,3)) |
+-------------------------------+
| 2.134                         |
+-------------------------------+

Lecture bonus :Comment désactiver la vérification de clé étrangère dans MySQL

MySQL CONVERT Chaîne en entier

Voici un exemple pour MySQL convertir une chaîne en entier signé. Veuillez noter que vous ne pouvez convertir que des types de données entiers UNSIGNED ou SIGNED. Vous ne pouvez pas utiliser INT dans la fonction CAST.

mysql> select cast('123' as signed);
+------------------------+
| cast('123' as signed)  |
+------------------------+
| 1                      |
+------------------------+

MySQL CONVERT datetime to date

Voici comment convertir datetime en date. Vous pouvez également l'utiliser pour convertir l'horodatage en date.

mysql> select convert('2020-08-01 13:00:00',date);
+-------------------------------------+
| convert('2020-08-01 13:00:00',date) |
+-------------------------------------+
| 2020-08-01                          |
+-------------------------------------+

Lecture bonus :Comment vérifier la version de MySQL

MySQL CONVERT Blob to Text

MySQL CONVERT ne prend pas en charge la conversion en type de données texte. Vous devez convertir le blog en char. Voici un exemple pour convertir un petit blob en caractère.

mysql> select convert('wewewwbwbddwg',char);
+-------------------------------+
| convert('wewewwbwbddwg',char) |
+-------------------------------+
| wewewwbwbddwg                 |
+-------------------------------+

J'espère que vous pouvez maintenant facilement convertir des données dans MySQL.

Ubiq facilite la visualisation des données en quelques minutes et la surveillance dans des tableaux de bord en temps réel. Essayez-le aujourd'hui !