logo

Funkcija MySQL CAST().

Funkcija CAST() v MySQL se uporablja za pretvorbo vrednosti iz enega podatkovnega tipa v drugega podatkovnega tipa, določenega v izrazu. Večinoma se uporablja s stavki WHERE, HAVING in JOIN. Ta funkcija je podobna funkciji CONVERT() v MySQL .

Sledijo tipi podatkov, s katerimi ta funkcija deluje popolnoma:

Vrsta podatkov Opisi
DATUM Vrednost pretvori v podatkovni tip DATE v formatu 'LLLL-MM-DD'. Podpira obseg DATUMA v '1000-01-01' do '9999-12-31'.
DATUM ČAS Vrednost pretvori v podatkovni tip DATETIME v formatu 'LLLL-MM-DD HH:MM:SS'. Podpira obseg od '1000-01-01 00:00:00' do '9999-12-31 23:59:59'.
ČAS Vrednost pretvori v podatkovni tip ČAS v formatu 'HH:MM:SS'. Podpira obseg časa v '-838:59:59' do '838:59:59'.
CHAR Pretvori vrednost v podatkovni tip CHAR, ki vsebuje niz s fiksno dolžino.
DECIMALNO Pretvori vrednost v podatkovni tip DECIMAL, ki vsebuje decimalni niz.
PODPISAN Pretvori vrednost v podatkovni tip SIGNED, ki vsebuje podpisano 64-bitno celo število.
NEPODPISAN Pretvori vrednost v podatkovni tip UNSIGNED, ki vsebuje nepredznačeno 64-bitno celo število.
BINARNA Pretvori vrednost v podatkovni tip BINARY, ki vsebuje binarni niz.

Sintaksa

Spodaj je sintaksa funkcije CAST() v MySQL:

 CAST(expression AS datatype); 

Parameter Razlaga

Ta sintaksa sprejema dva parametra, ki ju bomo obravnavali spodaj:

Parameter Zahteva Opisi
Izraz Obvezno To je vrednost, ki bo pretvorjena v drug določen tip podatkov.
Vrsta podatkov Obvezno Je vrednost ali tip podatkov, v katerega je treba pretvoriti vrednost izraza.

Povratna vrednost

Po pretvorbi bo vrnil vrednost, v kateri podatkovni tip želimo pretvoriti.

Podpora za različico MySQL

Funkcija CAST lahko podpira naslednje različice 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

Razumejmo funkcijo MySQL CAST() z naslednjimi primeri. Funkcijo CAST lahko uporabimo neposredno s stavkom SELECT.

Primer 1

Ta stavek pretvori vrednost v podatkovni tip DATE.

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

Izhod

Funkcija MySQL CAST().

Primer 2

Ta stavek pretvori vrednost v podatkovni tip SIGNED.

 SELECT CAST(3-6 AS SIGNED); 

Izhod

Funkcija MySQL CAST().

Primer 3

Ta stavek pretvori vrednost v podatkovni tip UNSIGNED.

 SELECT CAST(3-6 AS UNSIGNED); 

Izhod

Funkcija MySQL CAST().

Primer 4

Včasih je treba niz izrecno pretvoriti v celo število, uporabite naslednji stavek za pretvorbo vrednosti v podatkovni tip INTEGER.

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

Izhod

Funkcija MySQL CAST().

Primer 5

Naslednji stavek najprej pretvori celoštevilsko vrednost v podatkovni tip niza in nato izvede veriženje z drugim podanim nizom.

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

Izhod

Funkcija MySQL CAST().

Primer 6

V tem primeru si bomo ogledali, kako funkcija CAST deluje s tabelo. Najprej ustvarimo tabelo ' Naročila ', ki vsebuje naslednje podatke:

Funkcija MySQL CAST().

V zgornji tabeli lahko vidimo, da je Order_Date podatkovnega tipa DATE. Zdaj, če želimo pridobiti ime izdelka med izbranimi časovnimi razponi, izvedite spodnji stavek. Tukaj je dobesedni niz pretvorjen v vrednost časovnega žiga pred ovrednotenjem pogoja 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); 

Ta izjava bo proizvedla naslednje rezultate:

Funkcija MySQL CAST().