MySQL中 CONVERT()函数 ,CAST()函数
1:CONVERT()函数可以将一个数据类型转换为另一个数据类型
例如:
SELECT CONVERT(12345.67, DECIMAL(10,2)) FROM dual;
上面的例子将字符串 "12345.67" 转换为数字类型,并指定精度为 10 位,小数点后保留 2 位。结果为数字 12345.67。
2:CAST()函数也可以将一个数据类型转换为另一个数据类型。
例如:
SELECT CAST(2022/03/17 AS DATE) FROM dual;
上面的例子将日期字符串 "2022/03/17" 转换为日期类型。结果为日期型数据 2022-03-17。
需要注意的是,MySQL中没有直接对字符进行格式化的函数,但是可以使用DATE_FORMAT() 函数来格式化日期或时间类型的数据
3:DATE_FORMAT() 函数
MySQL 中用于将日期格式化为字符串的函数。它接受两个参数:待格式化的日期和用于指定格式的字符串。
下面是一个示例,使用 DATE_FORMAT() 函数将当前日期格式化为 "YYYY-MM-DD" 的字符串:
SELECT DATE_FORMAT(NOW(), %Y-%m-%d);
这将返回当前日期的字符串表示,例如 "2023-03-17"
以下是一些常用的格式代码:
-
%Y:四位数的年份(例如 2023) %y:两位数的年份(例如 23) %m:两位数的月份(例如 03) %d:两位数的天数(例如 17) %H:24 小时制的小时数(例如 02, 15) %h:12 小时制的小时数(例如 02, 03) %i:两位数的分钟数(例如 05, 30) %s:两位数的秒数(例如 00, 59) 例如,下面的查询将当前日期和时间格式化为 "YYYY-MM-DD HH:MM:SS" 的字符串: SELECT DATE_FORMAT(NOW(), %Y-%m-%d %H:%i:%s); 这将返回类似于 "2023-03-17 02:36:26" 的字符串。
同时Orcle中也有类似的转换函数:
详情请看传送门: