Funkce MySQL CAST

Funkce Mysql Cast



Cíl: Zjistěte, jak převést hodnotu z jednoho datového typu na jiný podporovaný datový typ pomocí funkce CAST() v MySQL.

Funkce MySQL CAST().

Funkce CAST se řídí jednoduchou syntaxí, jak je uvedeno níže:

OBSAZENÍ ( expr TAK JAKO typ [ pole ] ) ;







Funkce přijímá výraz a cílový datový typ jako parametry. Poté převede hodnotu na zadaný cílový datový typ a vrátí výraz.



Funkce dokáže převést vstupní výraz na různé podporované datové typy, včetně BINARY, CHAR, DATE, DATETIME, DECIMAL, DOUBLE, FLOAT, NCHAR, UNSIGNED, SIGNED, REAL atd.



Příklad 1: Funkce MySQL CAST().

Podívejme se na některé příklady použití funkce cast v MySQL.





vybrat obsazení ( 100 tak jako char ) tak jako ven_;

Předchozí příklad používá funkci CAST() k převodu typu int na řetězec.



Výstup:

ven_ |
----+
100 |

Příklad 2

K převodu hodnoty na typ data můžeme také použít funkci CAST(), jak ukazuje následující příklad:

vybrat obsazení ( '2022-10-10' tak jako datum ) tak jako ven_;

Výsledná hodnota je uvedena níže:

ven_ |
-----------+
2022 - 10 - 10 |

Je dobré mít na paměti, že hodnota musí mít správný formát a lze ji převést na zadaný typ. Například pokus o převod nesprávné hodnoty data na funkci přetypování vrátí hodnotu NULL.

Příklad je uveden níže:

vybrat obsazení ( '10-10-2022' tak jako datum ) tak jako ven_;

V tomto případě předchozí formát následuje nesprávný formát data. MySQL vrátí chybu, jak je uvedeno níže:

Nesprávná hodnota data a času: '10-10-2022'

V některých případech MySQL vrátí hodnotu NULL.

Příklad 3: Převeďte řetězec na Int

Můžeme také převést daný typ řetězce na int, jak ukazuje následující příklad:

vybrat obsazení ( '100' tak jako desetinný ) tak jako ven_;

Výstup:

ven_ |
----+
100 |

Příklad 4: Převeďte řetězec na plovoucí

vybrat obsazení ( '100,2' tak jako plovák ) tak jako ven_;

Výstup:

ven_ |
-----+
100,2 |

Příklad 5: Použití funkce CAST() ve sloupci tabulky

Se sloupcem tabulky můžeme také použít funkci CAST(). Předpokládejme například, že máme níže uvedenou tabulku:

K převodu hodnot sloupce install_version můžeme použít funkce CONCAT() a CAST(), jak je ukázáno v dotazu níže:

vybrat konkat ( název_serveru, '-' , obsazení ( nainstalovaná_verze tak jako char ) od stack_mapping sm;

Výsledná tabulka:

konkat ( název_serveru, '-' , nainstalovaná_verze ) |
--------------------------------------------+
SQL Server - 15,0 |
Elasticsearch - 8.4 |
Redis - 6.0 |
PostgreSQL - 14.5 |
MySQL - 8,0 |

Závěr

Tento kurz naučil základy práce s funkcí CAST() pro převod hodnoty z jednoho typu na jiný. Pro zvýraznění převodu String na Int a String na Float je uvedeno několik příkladů.