sql >> Databasteknik >  >> RDS >> Mysql

MySQL-konverteringsfunktion

Ibland kan du behöva konvertera data i MySQL eller skriva cast-data i MySQL. Så här konverterar du data från en datatyp till en annan med MySQL CONVERT-funktionen. Den kan också användas för att konvertera data från en teckenuppsättning till en annan.

Hur man konverterar data i MySQL

Här är stegen för att konvertera data i MySQL med MySQL CONVERT-funktionen. Här är syntaxen för MySQL CONVERT-funktionen

CONVERT(input_value, data_type)

I ovanstående funktion måste du ange input_value som bokstavlig sträng eller kolumnnamn och data_type som du vill konvertera denna data till. Precis som MySQL CAST kan du casta data till BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, ONSIGNED datatyper.

Så här konverterar du till exempel ett bokstavligt värde till en annan datatyp

CONVERT(1, char)

och så här konverterar du en kolumn (t.ex. id) till en annan datatyp

CONVERT(id, char)

Här är MySQL CONVERT-syntax för att konvertera teckenuppsättningar

CONVERT(input_value USING character_set)

I funktionen ovan måste du ange input_value som bokstavlig sträng eller kolumnnamn och teckenuppsättning som du vill konvertera denna data till.

Här är ett exempel på hur man castar som latin1

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

Bonus Läs:Hur man skriver Cast i MySQL

Exempel på MySQL KONVERTERING

Låt oss titta på några exempel på MySQL CONVERT-funktion.

MySQL CONVERT String to Date

Så här konverterar du sträng till datum

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

Bonusläsning:MySQL Återställningsfråga

MySQL KONVERTERA sträng till decimal

Så här konverterar du sträng till decimal

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

Bonusläs:Hur man använder MySQL-samling

MySQL KONVERTERA sträng till dubbel

MySQL stöder inte konvertering till dubbel datatyp. Du måste konvertera sträng till decimal.

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

MySQL CONVERT String to Float

Återigen, MySQL stöder inte konvertering till flyttalsdatatyp. Du måste konvertera sträng till decimal.

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

Bonus Läs:Hur man inaktiverar utländsk nyckelkontroll i MySQL

MySQL CONVERT String to int

Här är ett exempel på att MySQL konverterar sträng till signerat heltal. Observera att du bara kan casta till OSIGNERADE eller SIGNERADE heltalsdatatyper. Du kan inte använda INT i CAST-funktionen.

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

MySQL CONVERT Datetime to date

Så här konverterar du datetime till date. Du kan också använda den för att konvertera tidsstämpel till datum.

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

Bonus Läs:Hur man kontrollerar MySQL-version

MySQL KONVERTERA Blob till text

MySQL CONVERT stöder inte konvertering till textdatatyp. Du måste konvertera bloggen till char. Här är ett prov för att omvandla en liten blob till röding.

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

Förhoppningsvis kan du nu enkelt konvertera data i MySQL.

Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!

  1. Uppdatera SQL-läge i MySQL

  2. Databassäkerhet 101:Säkerhet i databaser med öppen källkod

  3. Få summan av MySQL-kolumnen i PHP

  4. Är MariaDB JDBC-drivrutinen påverkad av Log4j-sårbarheten?