logo

Funcția MySQL CAST().

Funcția CAST() din MySQL este folosită pentru a converti o valoare dintr-un tip de date în alt tip de date specificat în expresie. Este folosit mai ales cu clauzele WHERE, HAVING și JOIN. Această funcție este similară cu funcția CONVERT() în MySQL .

Următoarele sunt tipurile de date la care această funcție funcționează perfect:

Tip de date Descrieri
DATA Convertește valoarea în tipul de date DATE în formatul „AAAA-LL-ZZ”. Acceptă intervalul DATE din „1000-01-01” până la „9999-12-31”.
DATETIME Convertește valoarea în tipul de date DATETIME în formatul „AAAA-LL-ZZ HH:MM:SS”. Acceptă intervalul de la „1000-01-01 00:00:00” la „9999-12-31 23:59:59”.
TIMP Acesta convertește valoarea în tipul de date TIME în formatul „HH:MM:SS”. Acceptă intervalul de timp de la „-838:59:59” la „838:59:59”.
CHAR Convertește o valoare în tipul de date CHAR care conține șirul de lungime fixă.
ZECIMAL Convertește o valoare în tipul de date DECIMAL care conține un șir zecimal.
SEMNAT Convertește o valoare în tipul de date SIGNED care conține întregul semnat pe 64 de biți.
NESEMNAT Convertește o valoare în tipul de date UNSIGNED care conține întregul nesemnat pe 64 de biți.
BINAR Convertește o valoare în tipul de date BINARY care conține șirul binar.

Sintaxă

Următoarele sunt sintaxa funcției CAST() în MySQL:

 CAST(expression AS datatype); 

Explicația parametrului

Această sintaxă acceptă doi parametri, care vor fi discutați mai jos:

Parametru Cerinţă Descrieri
Expresie Necesar Este o valoare care va fi convertită într-un alt tip de date specific.
Tip de date Necesar Este o valoare sau un tip de date în care valoarea expresiei trebuie convertită.

Valoare returnată

După conversie, va returna o valoare în ce tip de date dorim să convertim.

Suport pentru versiunea MySQL

Funcția CAST poate suporta următoarele versiuni MySQL:

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

Să înțelegem funcția MySQL CAST() cu următoarele exemple. Putem folosi funcția CAST cu instrucțiunea SELECT direct.

Exemplul 1

Această instrucțiune convertește valoarea în tipul de date DATE.

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

Ieșire

Funcția MySQL CAST().

Exemplul 2

Această instrucțiune convertește valoarea în tipul de date SIGNED.

 SELECT CAST(3-6 AS SIGNED); 

Ieșire

Funcția MySQL CAST().

Exemplul 3

Această instrucțiune convertește valoarea în tipul de date UNSIGNED.

 SELECT CAST(3-6 AS UNSIGNED); 

Ieșire

Funcția MySQL CAST().

Exemplul 4

Uneori este nevoie de a converti șirul într-un număr întreg în mod explicit, utilizați următoarea instrucțiune pentru a converti valoarea în tipul de date INTEGER.

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

Ieșire

Funcția MySQL CAST().

Exemplul 5

Următoarea instrucțiune convertește mai întâi o valoare întreagă în tip de date șir și apoi efectuează concatenarea cu un alt șir specificat.

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

Ieșire

Funcția MySQL CAST().

Exemplul 6

În acest exemplu, vom vedea cum funcționează funcția CAST cu tabelul. Să creăm mai întâi un tabel ' Comenzi ' care conține următoarele date:

Funcția MySQL CAST().

În tabelul de mai sus, putem vedea că Order_Date este în tipul de date DATE. Acum, dacă vrem să obținem un nume de produs între intervalele de timp selectate, executați instrucțiunea de mai jos. Aici, șirul literal convertit în valoare de marcaj de timp înainte de a evalua condiția WHERE.

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

Această declarație va produce următorul rezultat:

Funcția MySQL CAST().