Понякога може да се наложи да прехвърляте MySQL данни от един тип данни към друг. Ето как да въвеждате данни с помощта на функцията MySQL CAST.
Как да въведете Cast в MySQL
Ще разгледаме как работи MySQL CAST и как да въвеждаме данни с помощта на функцията MySQL CAST.
Ето синтаксиса на MySQL функцията CAST
CAST(data as data_type)
MySQL CAST изисква два входа – данните, които трябва да се прехвърлят и типа данни (десетичен, char и т.н.), в който искате да преобразувате тези данни. Можете да прехвърляте данни в типове данни BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.
Можете да предоставите данни като буквална стойност, както е показано по-долу
CAST(1 as char)
ИЛИ
Можете да данни като име на колона (напр. идентификатор)
CAST(id as char)
Бонус четене:Заявка за връщане на MySQL
Ето примерна SQL заявка, при която предаваме int към char в клаузата SELECT
mysql> select cast(1 as char) from sales;
Можете също да използвате MySQL CAST в клаузата WHERE. Тук преобразуваме низ в int в клауза WHERE.
mysql> select * from sales where id=CAST('213' as int);
Бонус четене:Как да използвате MySQL Rollup Query
Примери за MySQL CAST
Нека разгледаме някои от често срещаните примери за MySQL функция CAST.
MySQL CAST като Int
Ето пример за MySQL прехвърляне на float към цяло число със знак. Моля, имайте предвид, че можете да прехвърляте само към тип данни без знак или подписан. Не можете да използвате INT във функцията CAST.
mysql> select cast(1.23 as signed); +------------------------+ | cast(1.23 as signed) | +------------------------+ | 1 | +------------------------+
MySQL CAST като десетичен знак
Ето как да прехвърляте като десетичен знак
mysql> select cast(1.23 as decimal(4,3)); +----------------------------+ | cast(1.23 as decimal(4,3)) | +----------------------------+ | 1.230 | +----------------------------+
Бонус четене:Как да проверите версията на MySQL
MySQL CAST като Float
MySQL CAST не поддържа cast като float. Трябва да хвърлите десетичен знак, както е показано по-горе.
mysql> select cast(2.234 as decimal(5,3)); +-----------------------------+ | cast(2.234 as decimal(5,3)) | +-----------------------------+ | 2.234 | +-----------------------------+
MySQL Cast като Varchar
MySQL CAST не поддържа cast като varchar. Трябва да хвърляте като char, както е показано по-долу.
mysql> select cast('xyz' as char); +---------------------+ | cast('xyz' as char) | +---------------------+ | xyz | +---------------------+
MySQL Дата и време до дата
Ето как да прехвърляте дата и час към дата.
mysql> select cast('2020-01-01 13:30:00' as date); +-------------------------------------+ | cast('2020-01-01 13:30:00' as date) | +-------------------------------------+ | 2020-01-01 | +-------------------------------------+
Ubiq улеснява визуализирането на данни за минути и наблюдение в табла за управление в реално време. Опитайте днес!