„Akár csak most kezdi, akár tapasztalt fejlesztő, találkozni fog a típuskonverzióval. A típuskonverzió egy érték vagy kifejezés egyik adattípusból egy másik kompatibilis adattípusba konvertálásának folyamatára vonatkozik.
Ebben a bejegyzésben megvitatjuk az SQL Server cast() függvényének használatát az értékek vagy kifejezések egyik típusból a másikba való konvertálására.
SQL Server Cast funkció
A következő részlet a cast() függvény szintaxisát mutatja be.
ÖNTVÉNY ( kifejezés MINT adattípus [ ( HOSSZ ) ] )
A függvény a következő paramétereket fogadja el:
- kifejezés – bármely érvényes kifejezés.
- data_type – beállítja a cél adattípust.
- hossz – a céladattípus hosszaként meghatározott opcionális egész érték (csak a támogatott típusoknál).
A függvény ezután visszaadja a cél adattípusra konvertált kifejezést.
Használjunk példákat annak szemléltetésére, hogyan használhatjuk a cast függvényt.
A Cast függvény használata karakterlánc egész számmá alakításához
A következő példa a cast függvényt használja a bemeneti karakterlánc egész értékké alakítására.
KIVÁLASZTÁS
ÖNTVÉNY ( '100' MINT INT ) MINT output_value;
A kapott kimenet:
output_value |------------+
100 |
A Cast függvény használata a decimális int
Az alábbi második példa a cast függvényt használja a decimális típus int-re konvertálására.
KIVÁLASZTÁSÖNTVÉNY ( 3.14159 MINT INT ) MINT output_value;
A cast függvény a bemeneti decimális értéket a legközelebbi egész értékre kerekíti, amint az ábrán látható:
kimeneti_érték |------------+
3 |
A Cast függvény használata a karakterlánc dátum-idővé alakításához
A cast függvényt arra is használhatjuk, hogy egy adott bemeneti karakterláncot datetime értékké alakítsunk. Az alábbiakban egy példa illusztráció látható:
KIVÁLASZTÁSÖNTVÉNY ( '2022-10-10' MINT dátum idő ) MINT output_value;
Eredmény:
kimeneti_érték |-----------------------+
2022 - 10 - 10 00:00: 00 000 |
A Cast függvény használata a táblázat oszlopán
Alkalmazhatjuk a cast függvényt egy adott oszlopra is, és konvertálhatjuk a sorokat abból az oszlopból egy másik adattípusba.
Tegyük fel például, hogy van egy táblázatunk:
A size_on_disk oszlop értékeit egész számokká alakíthatjuk az alábbi módon:
KIVÁLASZTÁSszerver név ,
ÖNTVÉNY ( mérete_lemezen MINT INT ) MINT appx_size
TÓL TŐL
bejegyzés;
Az eredményül kapott táblázat a következő:
Amint látjuk, az eredményt egész értékként fejezzük ki (kerekítve).
MEGJEGYZÉS: Érdemes szem előtt tartani, hogy különféle konverziós típusok léteznek.
- Implicit konverzió – Az SQL Server motor automatikusan alkalmazza az átalakítási műveletet, hogy a legjobban megfeleljen a kért műveletnek.
- Explicit konverzió – a felhasználó manuálisan hajtja végre a konverziós függvények, például a cast() és convert() meghívásával.
A következő táblázat bemutatja, hogy milyen típusokat lehet konvertálni, milyen típusú konverziót alkalmaztak, stb.
Forrás: Microsoft
Nullázás
Köszönjük, hogy elolvasta ezt az oktatóanyagot. Bízunk benne, hogy tanult valami újat ebből az útmutatóból.