Funktionen CAST() i MySQL används för att konvertera ett värde från en datatyp till en annan datatyp som anges i uttrycket. Det används mest med WHERE, HAVING och JOIN-satser. Denna funktion liknar CONVERT()-funktionen i MySQL .
Följande är de datatyper som denna funktion fungerar perfekt för:
Data typ | Beskrivningar |
---|---|
DATUM | Den konverterar värdet till datatypen DATE i formatet 'ÅÅÅÅ-MM-DD'. Den stöder intervallet DATE i '1000-01-01' till '9999-12-31'. |
DATUM TID | Den konverterar värdet till datatypen DATETIME i formatet 'ÅÅÅÅ-MM-DD TT:MM:SS'. Den stöder intervallet '1000-01-01 00:00:00' till '9999-12-31 23:59:59'. |
TID | Den konverterar värdet till TIME-datatyp i formatet 'HH:MM:SS'. Den stöder tidsintervallet '-838:59:59' till '838:59:59'. |
RÖDING | Den konverterar ett värde till CHAR-datatypen som innehåller strängen med fast längd. |
DECIMAL | Den konverterar ett värde till datatypen DECIMAL som innehåller en decimalsträng. |
SIGNERAD | Den konverterar ett värde till SIGNED datatype som innehåller det signerade 64-bitars heltal. |
OSIGNERAD | Den konverterar ett värde till datatypen UNSIGNED som innehåller det osignerade 64-bitars heltal. |
BINÄR | Den konverterar ett värde till den BINÄRA datatypen som innehåller den binära strängen. |
Syntax
Följande är syntaxen för CAST()-funktionen i MySQL:
CAST(expression AS datatype);
Parameter Förklaring
Denna syntax accepterar två parametrar, som kommer att diskuteras nedan:
Parameter | Krav | Beskrivningar |
---|---|---|
Uttryck | Nödvändig | Det är ett värde som kommer att konverteras till en annan specifik datatyp. |
Data typ | Nödvändig | Det är ett värde eller en datatyp där uttrycksvärdet måste konverteras. |
Returvärde
Efter konvertering returnerar den ett värde i vilken datatyp vi vill konvertera.
Stöd för MySQL-version
CAST-funktionen kan stödja följande 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
Låt oss förstå funktionen MySQL CAST() med följande exempel. Vi kan använda CAST-funktionen med SELECT-satsen direkt.
Exempel 1
Denna sats konverterar värdet till datatypen DATE.
SELECT CAST('2018-11-30' AS DATE);
Produktion
Exempel 2
Denna sats konverterar värdet till SIGNED datatyp.
SELECT CAST(3-6 AS SIGNED);
Produktion
Exempel 3
Denna sats konverterar värdet till UNSIGNED datatype.
SELECT CAST(3-6 AS UNSIGNED);
Produktion
Exempel 4
Ibland finns det ett behov av att konvertera strängen till ett heltal explicit, använd följande sats för att konvertera värdet till INTEGER datatyp.
SELECT (3 + CAST('3' AS SIGNED))/2;
Produktion
Exempel 5
Följande sats konverterar först ett heltalsvärde till strängdatatyp och utför sedan sammanlänkning med en annan specificerad sträng.
SELECT CONCAT('CAST Function Example ## ',CAST(5 AS CHAR));
Produktion
Exempel 6
I det här exemplet ska vi se hur CAST-funktionen fungerar med tabellen. Låt oss först skapa en tabell ' Order ' som innehåller följande data:
I tabellen ovan kan vi se att Order_Date är i datatypen DATE. Nu, om vi vill få ett produktnamn mellan utvalda tidsintervall, kör påståendet nedan. Här omvandlas den bokstavliga strängen till tidsstämpelvärde innan WHERE-villkoret utvärderas.
SELECT Order_ID, Product_Name FROM Orders WHERE Order_Date BETWEEN CAST('2020-02-01' AS DATETIME) AND CAST('2020-02-28' AS DATETIME);
Detta uttalande kommer att producera följande utdata: