首页 新闻 会员 周边

MySQL 如何把日期类型转换成 Bigint 的形式?

0
悬赏园豆:5 [已解决问题] 解决于 2023-03-10 09:57

要把日期类型转换成为长整型,包括年、月、日、时、分秒、微秒,以下语句报语法错

select cast(date_format(now(), '%Y%m%d%H%i%s%f') as bigint);
背锅狼的主页 背锅狼 | 初学一级 | 园豆:59
提问于:2023-03-08 17:04

无符号整数 : UNSIGNED
select CONVERT(date_format(now(), '%Y%m%d%H%i%s'),UNSIGNED) as title;

南瓜小米粥 1年前

@南瓜小米粥: 这样把微秒给去掉了啊,但是加上微秒的话,数据就不对了

血狼一族 1年前
< >
分享
最佳答案
0

无符号整数 : UNSIGNED
select CONVERT(date_format(now(), '%Y%m%d%H%i%s'),UNSIGNED) as title;

收获园豆:5
南瓜小米粥 | 菜鸟二级 |园豆:207 | 2023-03-08 17:59

我知道你的意思,按照PostgreSQL做的话是这样的,满足你的需求,至于mysql的话得找找官方文档了。
精确到毫秒:select to_char(now(),'yyyymmddhh24miss.ms') ;
结果
to_char |
-----------------------------+
20230310170222.033|

南瓜小米粥 | 园豆:207 (菜鸟二级) | 2023-03-10 17:01
其他回答(3)
0
ycyzharry | 园豆:25663 (高人七级) | 2023-03-08 19:01

我要的是转换成整数表达的字符串形式,象2023年12月10日,就是20231210,能方便地被人看懂

支持(0) 反对(0) 背锅狼 | 园豆:59 (初学一级) | 2023-03-09 10:24
0
快乐的凡人721 | 园豆:3975 (老鸟四级) | 2023-03-09 20:06
0

以下查询语句永远得到同一个结果:18446744073709551615

仔细看了下,是因为 date_format 函数得到的字符串已经超过了 bigint unsigned 的范围

select cast(date_format(now(), '%Y%m%d%H%i%s%f') as unsigned);

 

背锅狼 | 园豆:59 (初学一级) | 2023-03-10 09:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册