logo

MySQL CAST() funktion

CAST()-funktionen i MySQL bruges til at konvertere en værdi fra én datatype til en anden datatype angivet i udtrykket. Det bruges mest med WHERE, HAVING og JOIN-klausuler. Denne funktion ligner funktionen CONVERT() i MySQL .

Følgende er de datatyper, som denne funktion fungerer perfekt til:

Datatype Beskrivelser
DATO Den konverterer værdien til DATE-datatypen i formatet 'ÅÅÅÅ-MM-DD'. Det understøtter intervallet DATE i '1000-01-01' til '9999-12-31'.
DATO TID Den konverterer værdien til datatypen DATETIME i formatet 'ÅÅÅÅ-MM-DD TT:MM:SS'. Den understøtter intervallet '1000-01-01 00:00:00' til '9999-12-31 23:59:59'.
TID Den konverterer værdien til TIME-datatypen i formatet 'TT:MM:SS'. Den understøtter tidsintervallet '-838:59:59' til '838:59:59'.
CHAR Den konverterer en værdi til CHAR-datatypen, der indeholder strengen med fast længde.
DECIMAL Den konverterer en værdi til datatypen DECIMAL, der indeholder en decimalstreng.
UNDERSKREVET Den konverterer en værdi til SIGNED datatype, der indeholder det fortegnede 64-bit heltal.
USIGNERT Det konverterer en værdi til datatypen UNSIGNED, der indeholder det usignerede 64-bit heltal.
BINÆR Den konverterer en værdi til den BINÆRE datatype, der indeholder den binære streng.

Syntaks

Følgende er syntaksen for CAST()-funktionen i MySQL:

 CAST(expression AS datatype); 

Parameterforklaring

Denne syntaks accepterer to parametre, som vil blive diskuteret nedenfor:

Parameter Krav Beskrivelser
Udtryk Påkrævet Det er en værdi, der vil blive konverteret til en anden specifik datatype.
Datatype Påkrævet Det er en værdi eller datatype, hvori udtryksværdien skal konverteres.

Returværdi

Efter konvertering returnerer den en værdi i hvilken datatype vi ønsker at konvertere.

Understøttelse af MySQL-version

CAST-funktionen kan understøtte følgende MySQL-versioner:

  • MySQL 8.0
  • MySQL 5.7
  • MySQL 5.6
  • MySQL 5.5
  • MySQL 5.1
  • MySQL 5.0
  • MySQL 4.1
  • MySQL 4.0

Lad os forstå MySQL CAST()-funktionen med følgende eksempler. Vi kan bruge CAST-funktionen med SELECT-sætningen direkte.

Eksempel 1

Denne sætning konverterer værdien til DATE-datatype.

 SELECT CAST('2018-11-30' AS DATE); 

Produktion

MySQL CAST() funktion

Eksempel 2

Denne sætning konverterer værdien til SIGNED datatype.

 SELECT CAST(3-6 AS SIGNED); 

Produktion

MySQL CAST() funktion

Eksempel 3

Denne sætning konverterer værdien til UNSIGNED datatype.

 SELECT CAST(3-6 AS UNSIGNED); 

Produktion

MySQL CAST() funktion

Eksempel 4

Nogle gange er der behov for eksplicit at konvertere strengen til et heltal, brug følgende sætning til at konvertere værdien til INTEGER datatype.

 SELECT (3 + CAST('3' AS SIGNED))/2; 

Produktion

MySQL CAST() funktion

Eksempel 5

Følgende sætning konverterer først en heltalsværdi til strengdatatype og udfører derefter sammenkædning med en anden specificeret streng.

 SELECT CONCAT('CAST Function Example ## ',CAST(5 AS CHAR)); 

Produktion

MySQL CAST() funktion

Eksempel 6

I dette eksempel skal vi se, hvordan CAST-funktionen fungerer med tabellen. Lad os først oprette en tabel ' Ordre:% s ', der indeholder følgende data:

MySQL CAST() funktion

I ovenstående tabel kan vi se, at Order_Date er i datatypen DATE. Nu, hvis vi ønsker at få et produktnavn mellem udvalgte tidsintervaller, skal du udføre sætningen nedenfor. Her konverteres den bogstavelige streng til tidsstempelværdi, før WHERE-betingelsen evalueres.

 SELECT Order_ID, Product_Name FROM Orders WHERE Order_Date BETWEEN CAST('2020-02-01' AS DATETIME) AND CAST('2020-02-28' AS DATETIME); 

Denne erklæring vil producere følgende output:

MySQL CAST() funktion