Funkcija MySQL CAST().
Funkcija CAST sledi preprosti sintaksi, kot je prikazano spodaj:
CAST ( ekspr AS vrsta [ niz ] ) ;Funkcija sprejme izraz in ciljni podatkovni tip kot parametra. Nato pretvori vrednost v podani ciljni podatkovni tip in vrne izraz.
Funkcija lahko pretvori vhodni izraz v različne podprte vrste podatkov, vključno z BINARY, CHAR, DATE, DATETIME, DECIMAL, DOUBLE, FLOAT, NCHAR, UNSIGNED, SIGNED, REAL itd.
Primer 1: Funkcija MySQL CAST().
Oglejmo si nekaj primerov uporabe funkcije cast v MySQL.
izberite zasedba ( 100 kot char ) kot ven_;
Prejšnji primer uporablja funkcijo CAST() za pretvorbo tipa int v niz.
Izhod:
zunaj_ |----+
100 |
Primer 2
Uporabimo lahko tudi funkcijo CAST() za pretvorbo vrednosti v vrsto datuma, kot je prikazano v naslednjem primeru:
izberite zasedba ( '10.10.2022' kot datum ) kot ven_;Dobljena vrednost je prikazana spodaj:
zunaj_ |----------+
2022 - 10 - 10 |
Dobro je upoštevati, da mora vrednost slediti pravilni obliki in jo je mogoče pretvoriti v podano vrsto. Na primer, poskus pretvorbe nepravilne datumske vrednosti v funkcijo cast bo vrnil NULL.
Spodaj je prikazan primer:
izberite zasedba ( '10.10.2022' kot datum ) kot ven_;V tem primeru prejšnja oblika sledi nepravilni obliki datuma. MySQL bo vrnil napako, kot je prikazano spodaj:
Nepravilna vrednost datuma in časa: '10.10.2022'V nekaterih primerih bo MySQL vrnil vrednost NULL.
Primer 3: Pretvori niz v Int
Dano vrsto niza lahko tudi pretvorimo v int, kot je prikazano v naslednjem primeru:
izberite zasedba ( '100' kot decimalno ) kot ven_;Izhod:
zunaj_ |----+
100 |
Primer 4: Pretvori niz v plavajoči
izberite zasedba ( '100,2' kot lebdi ) kot ven_;Izhod:
zunaj_ |-----+
100.2 |
Primer 5: Uporaba funkcije CAST() v stolpcu tabele
Funkcijo CAST() lahko uporabimo tudi s stolpcem tabele. Recimo, da imamo tabelo, kot je prikazano spodaj:
Uporabimo lahko funkcijo CONCAT() in CAST() za pretvorbo vrednosti stolpcainstalled_version, kot je prikazano v spodnji poizvedbi:
izberite concat ( ime_strežnika, '-' , zasedba ( nameščena_različica kot char ) iz stack_mapping sm;Končna tabela:
concat ( ime_strežnika, '-' , nameščena_različica ) |----------------------------------------------+
SQL Server - 15.0 |
Elasticsearch - 8.4 |
Redis - 6.0 |
PostgreSQL - 14.5 |
MySQL - 8.0 |
Zaključek
V tej vadnici so se naučili osnov dela s funkcijo CAST() za pretvorbo vrednosti iz ene vrste v drugo. Na voljo je več primerov, ki poudarjajo pretvorbo niza v Int in niza v plavajočo vrednost.