mysql中的日期格式问题
2021/12/1 19:10:58
本文主要是介绍mysql中的日期格式问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在Mysql中,关于日期的格式有三种类型:Data、Datatime、Timestamp
Data | Datatime | Timestamp | |
存储数据格式 | YYYY-MM-DD | YYYY-MM-DD hh:mm:ss | yyyymmddhhmmss |
支持的范围 | 1000-01-01 到 9999-12-31 |
1000-01-01 00:00:00 到 9999-12-31 23:59:59 |
1770-01-01到2037年
|
特殊说明 | 允许使用字符串或者数字来赋值。例如,12331212和‘1233-12-12’的存储结果为:1233-12-12 | 允许使用字符串或者数字来赋值。例如,12331212121212和‘1233-12-12 12:12:12’的存储结果都为:1233-12-12 12:12:12 | 给该类型字段赋值时,值必须大于19700101000000,否则会抛异常。 |
注意:对于datatime类型:
1、自动识别时间字符串:
当写入其他时间字符串时,只有数据库识别成功才能够写入成功,且是想要的数据;如果识别不了的时间值,会显示为:‘000-00-00 00:00:00’
2、查询时智能补全模式:
假设要查询某天的全部数据,当在where条件后写入where dt = ‘2021-12-01’时,想要查出一天的数据时。若dt的类型是date时,则可以查出;若dt的类型是datetime时或者其他类型,则无法查出。因为在MySQL中,会对时间类型进行自动补零。上面的实际语句为where dt = ‘2021-12-01 00:00:00’。
要想解决上面的问题有两种思路:
1、在service层中对传进来的时间进行拼接(next_day + " (一定要在这个位置加一个空格)00:00:00")
2、使用MySQL中的to_days(next_day)函数,使用between and
这篇关于mysql中的日期格式问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-25MySQL报错Duplicate entry '0' for key 'PRIMARY'
- 2024-05-29阿里 Canal 实时同步 MySQL 增量数据至 ClickHouse 数据库
- 2024-05-24在Linux下管理MySQL的大小写敏感性
- 2024-04-26MySQL查出时间比实际晚8小时的解决方案
- 2024-04-01JPA不识别MySQL的枚举类型
- 2024-03-30mysql数据库表卡死解决方法
- 2024-03-15MySQL多数据源笔记5-ShardingJDBC实战
- 2024-03-11natural join mysql
- 2024-03-11关于VS2017,VS2015 中利用 EF使用Mysql 不显示数据源问题解决方案
- 2024-02-26mysql 阿里云xb后缀备份文件恢复-icode9专业技术文章分享