“Bez obzira jeste li tek počeli ili ste iskusni programer, naići ćete na konverziju tipa. Pretvorba tipa odnosi se na proces pretvaranja vrijednosti ili izraza iz jednog tipa podataka u drugi kompatibilni tip podataka.
U ovom ćemo postu raspravljati o korištenju funkcije cast() u SQL Serveru za pretvaranje vrijednosti ili izraza iz jedne vrste u drugu.”
SQL Server Cast funkcija
Sljedeći isječak prikazuje sintaksu funkcije cast().
CAST ( izraz KAO vrsta podataka [ ( DULJINA ) ] )
Funkcija prihvaća sljedeće parametre:
- izraz – svaki valjani izraz.
- data_type – postavlja ciljni tip podataka.
- duljina – neobavezna cjelobrojna vrijednost definirana kao duljina ciljnog tipa podataka (samo za podržane tipove).
Funkcija zatim vraća izraz pretvoren u ciljni data_type.
Poslužimo se primjerima da ilustriramo kako možemo koristiti funkciju cast.
Korištenje funkcije Cast za pretvaranje niza u cijeli broj
Sljedeći primjer koristi funkciju cast za pretvaranje ulaznog niza u cjelobrojnu vrijednost.
ODABERI
CAST ( '100' KAO INT ) KAO izlazna_vrijednost;
Rezultirajući izlaz:
izlazna_vrijednost |------------+
100 |
Korištenje funkcije Cast za pretvaranje decimala u Int
Drugi primjer u nastavku koristi funkciju cast za pretvaranje decimalnog tipa u int.
ODABERICAST ( 3.14159 KAO INT ) KAO izlazna_vrijednost;
Funkcija cast će zaokružiti ulaznu decimalnu vrijednost na najbližu vrijednost cijelog broja, kao što je prikazano:
izlazna_vrijednost |------------+
3 |
Korištenje funkcije Cast za pretvaranje niza u datum i vrijeme
Također možemo koristiti funkciju cast za pretvaranje danog ulaznog niza u vrijednost datuma i vremena. Primjer ilustracije prikazan je u nastavku:
ODABERICAST ( '10.10.2022' KAO Datum vrijeme ) KAO izlazna_vrijednost;
Rezultirajući rezultat:
izlazna_vrijednost |----------------------+
2022 - 10 - 10 00:00: 00.000 |
Korištenje funkcije Cast na stupcu tablice
Također možemo primijeniti funkciju cast na određeni stupac i pretvoriti retke iz tog stupca u drugu vrstu podataka.
Na primjer, pretpostavimo da imamo tablicu:
Vrijednosti stupca size_on_disk možemo pretvoriti u cijele brojeve kao što je prikazano:
ODABERInaziv_poslužitelja ,
CAST ( veličina_na_disku KAO INT ) KAO appx_size
IZ
upisi;
Dobivena tablica je kao što je prikazano:
Kao što vidimo, rezultat se izražava kao cjelobrojne vrijednosti (zaokružene).
NAPOMENA: Dobro je imati na umu da postoje različite vrste pretvorbe.
- Implicitna konverzija – SQL Server mehanizam automatski primjenjuje operaciju konverzije kako bi najbolje odgovarala traženoj operaciji.
- Eksplicitna konverzija – koju korisnik ručno provodi pozivanjem funkcija konverzije kao što su cast() i convert().
Sljedeći grafikon prikazuje koje vrste možete pretvoriti, vrstu primijenjene konverzije i više.
Izvor: Microsoft
Nuliranje
Hvala vam što ste pročitali ovaj vodič. Vjerujemo da ste naučili nešto novo iz ovog vodiča.