本文为 【Mysql】 CAST()函数相关知识,使用CAST()对数据进行类型转换。
假设场景:数据库table1表中某列存的是数字,但数据类型却是varchar,这样一来想获取到最大值使用MAX()函数肯定不可以了。
解决:可以先使用CAST()函数,将varchar转为int,再使用MAX()获取最大值
📌博主主页:一个肥鲇鱼
👉开发中的坏习惯:程序员的坏习惯,你占了几个!
👉感受 Lambda 之美:Java Lambda表达式
👉SpringSecurity+Jwt实现认证和授权:SpringSecurity认证和授权
语法
CAST函数语法规则是:Cast(字段名 as 转换的类型 )
BINARY 二进制
CHAR[(N)] 字符型
DATETIME 日期和时间型
DATE 日期型
TIME 时间型
DECIMAL 浮点型
SIGNED 整型
UNSIGNED 无符号整型
小栗子
1、字符转无符号整型
如:noticecode字段为varchar类型,需要获取noticecode字段最大数
select max(cast(noticecode as unsigned)) max from table1;
结果:
max: 7
2、日期转毫秒数
表table1:
date:2023-02-21 15:02:12
select cast(date as signed) as date from table1;
结果:
date:20230221150212
3、整数转浮点型
表table1
num:20
select cast(num as decimal(10, 2)) as num from table1
结果:
num:20.00
就不一一举例了,相信聪明的小伙伴已经掌握此函数的使用了