Nogle gange skal du muligvis caste MySQL-data fra én datatype til en anden. Sådan skriver du data ved hjælp af MySQL CAST-funktionen.
Sådan skriver du Cast i MySQL
Vi vil se på, hvordan MySQL CAST fungerer, og hvordan man typecaster data ved hjælp af MySQL CAST-funktionen.
Her er syntaksen for MySQL CAST-funktionen
CAST(data as data_type)
MySQL CAST kræver to input - de data, der skal typecastes, og den datatype (decimal, char osv.), som du vil konvertere disse data til. Du kan caste data til BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED datatyper.
Du kan angive data som en bogstavelig værdi som vist nedenfor
CAST(1 as char)
ELLER
Du kan data som et kolonnenavn (f.eks. id)
CAST(id as char)
Bonuslæsning:MySQL-tilbageføringsforespørgsel
Her er et eksempel på en SQL-forespørgsel, hvor vi caster en int til et tegn i SELECT-sætningen
mysql> select cast(1 as char) from sales;
Du kan også bruge MySQL CAST i WHERE-klausulen. Her konverterer vi streng til int i WHERE-sætning.
mysql> select * from sales where id=CAST('213' as int);
Bonuslæser:Sådan bruger du MySQL Rollup Query
Eksempler på MySQL CAST
Lad os se på nogle af de almindelige eksempler på MySQL CAST-funktion.
MySQL CAST som Int.
Her er et eksempel på MySQL cast float til signeret heltal. Bemærk venligst, at du kun kan caste til UNSIGNED eller SIGNED heltal datatyper. Du kan ikke bruge INT i CAST-funktionen.
mysql> select cast(1.23 as signed); +------------------------+ | cast(1.23 as signed) | +------------------------+ | 1 | +------------------------+
MySQL CAST som decimal
Sådan caster du som decimal
mysql> select cast(1.23 as decimal(4,3)); +----------------------------+ | cast(1.23 as decimal(4,3)) | +----------------------------+ | 1.230 | +----------------------------+
Bonuslæser:Sådan tjekker du MySQL-version
MySQL CAST som Float
MySQL CAST understøtter ikke cast som float. Du skal kaste så decimal som vist ovenfor.
mysql> select cast(2.234 as decimal(5,3)); +-----------------------------+ | cast(2.234 as decimal(5,3)) | +-----------------------------+ | 2.234 | +-----------------------------+
MySQL Cast som Varchar
MySQL CAST understøtter ikke cast som varchar. Du skal kaste som char som vist nedenfor.
mysql> select cast('xyz' as char); +---------------------+ | cast('xyz' as char) | +---------------------+ | xyz | +---------------------+
MySQL-dato-tidspunkt til dato
Sådan caster du dato og klokkeslæt til dato.
mysql> select cast('2020-01-01 13:30:00' as date); +-------------------------------------+ | cast('2020-01-01 13:30:00' as date) | +-------------------------------------+ | 2020-01-01 | +-------------------------------------+
Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!