logo

MySQL CAST() funkcija

Funkcija CAST() MySQL tiek izmantota, lai pārvērstu vērtību no viena datu tipa uz citu izteiksmē norādīto datu tipu. To galvenokārt izmanto ar WHERE, HAVING un JOIN klauzulām. Šī funkcija ir līdzīga funkcijai CONVERT() in MySQL .

Tālāk ir norādīti datu tipi, kuriem šī funkcija darbojas nevainojami.

Datu tips Apraksti
DATUMS Tas pārvērš vērtību DATE datu tipā formātā “GGGG-MM-DD”. Tas atbalsta diapazonu DATE no “1000-01-01” līdz “9999-12-31”.
DATUMS LAIKS Tas pārvērš vērtību datu tipā DATETIME formātā “GGGG-MM-DD HH:MM:SS”. Tas atbalsta diapazonu no “1000-01-01 00:00:00” līdz “9999-12-31 23:59:59”.
LAIKS Tas pārvērš vērtību TIME datu tipā formātā “HH:MM:SS”. Tas atbalsta laika diapazonu no “-838:59:59” līdz “838:59:59”.
CHAR Tas pārvērš vērtību CHAR datu tipā, kas satur fiksēta garuma virkni.
DECIMĀLĀ Tas pārvērš vērtību par datu tipu DECIMAL, kas satur decimāldaļu virkni.
PARAKSTS Tas pārvērš vērtību par SIGNED datu tipu, kas satur 64 bitu veselu skaitli ar parakstu.
NEPARAKSTĪTS Tas pārvērš vērtību par datu tipu NEPARAKSTS, kas satur neparakstītu 64 bitu veselu skaitli.
BINĀRS Tas pārvērš vērtību BINĀRO datu tipā, kas satur bināro virkni.

Sintakse

Tālāk ir norādīta MySQL funkcijas CAST() sintakse:

 CAST(expression AS datatype); 

Parametra skaidrojums

Šī sintakse pieņem divus parametrus, kas tiks apspriesti tālāk:

Parametrs Prasība Apraksti
Izteiksme Obligāti Tā ir vērtība, kas tiks pārveidota par citu konkrētu datu tipu.
Datu tips Obligāti Tā ir vērtība vai datu tips, kurā izteiksmes vērtība ir jākonvertē.

Atdeves vērtība

Pēc konvertēšanas tas atgriezīs vērtību, kurā datu tipā mēs vēlamies konvertēt.

MySQL versijas atbalsts

Funkcija CAST var atbalstīt šādas MySQL versijas:

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

Ļaujiet mums saprast MySQL CAST() funkciju ar šādiem piemēriem. Mēs varam tieši izmantot CAST funkciju ar SELECT priekšrakstu.

1. piemērs

Šis paziņojums pārvērš vērtību DATE datu tipā.

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

Izvade

MySQL CAST() funkcija

2. piemērs

Šis paziņojums pārvērš vērtību SIGNED datu tipā.

 SELECT CAST(3-6 AS SIGNED); 

Izvade

MySQL CAST() funkcija

3. piemērs

Šis paziņojums pārvērš vērtību datu tipā NEPArakstīts.

 SELECT CAST(3-6 AS UNSIGNED); 

Izvade

MySQL CAST() funkcija

4. piemērs

Dažreiz ir nepieciešams nepārprotami pārvērst virkni veselā skaitlī. Izmantojiet šo paziņojumu, lai pārvērstu vērtību INTEGER datu tipā.

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

Izvade

MySQL CAST() funkcija

5. piemērs

Šis paziņojums vispirms pārvērš vesela skaitļa vērtību virknes datu tipā un pēc tam veic savienošanu ar citu norādīto virkni.

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

Izvade

MySQL CAST() funkcija

6. piemērs

Šajā piemērā mēs redzēsim, kā funkcija CAST darbojas ar tabulu. Vispirms izveidosim tabulu Pasūtījumi ', kas satur šādus datus:

MySQL CAST() funkcija

Iepriekš redzamajā tabulā redzams, ka pasūtījuma_datums ir datu tipā DATE. Tagad, ja mēs vēlamies iegūt produkta nosaukumu starp atlasītajiem laika diapazoniem, izpildiet tālāk norādīto paziņojumu. Šeit burtiskā virkne tika pārveidota par laikspiedola vērtību pirms nosacījuma WHERE novērtēšanas.

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

Šis paziņojums radīs šādu rezultātu:

MySQL CAST() funkcija