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中也有类似的转换函数:
详情请看传送门:在Oracle中,TO_CHAR()、TO_NUMBER()和TO_DATE()函数的使用方法以及作用_x@lijun的博客-CSDN博客