mysql时间作比较
发表于:2024-12-01 作者:千家信息网编辑
千家信息网最后更新 2024年12月01日,本文主要给大家介绍mysql时间作比较,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下mysql时间作比较吧。看了Mysql关于日期字段对比的文
千家信息网最后更新 2024年12月01日mysql时间作比较
本文主要给大家介绍mysql时间作比较,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下mysql时间作比较吧。
看了Mysql关于日期字段对比的文档。在进行日期比较的时候,mysql会自动将日期转换成数字进行比较。where条件后,使用字符串格式日期与DATE,DATETIME,TIMESTAMP,TIME类型字段进行比较的时候,对字符串格式要求不严格,你可以使用任意格式的分隔符来表示日期,例如"2018-09-11","2018#09#11","2018&09&11"对于mysql来说,都是相同的日期。如果没有分隔符,例如"20180911",与"2018-09-11"或其他有分隔符的日期,也是相同的。例如下图
select a from t1 where a < '2018#09#11';与select a from t1 where a < '2018-09-11';与select a from t1 where a < '20180911';所代表的意义是相同的,都是查询日期小于2018年9月11日的数据也就是说上图的查询语句,完全可以重写为,这么做的好处?就是会使用索引,是查询更快select a from t1 where a < '2018-09-11';
当将日期类型字段与字符串型日期进行<,>,>=,<=,between比较的时候,Mysql会将字符串类型日期转换成长整型数字进行比较,从而加快查询速度。
下面三种情况除外:
1,两个表格字段的对比;
2,日期类型字段与表达式对比;
3,使用表达式对日期类型字段进行对比;
原因:对于以上三种情况,mysql会将日期转换为字符串进行比较。
下面的例子,都是可以正常运行的:
INSERT INTO t1 (testdate) VALUES (20180912);INSERT INTO t1 (testdate) VALUES ('20180912');INSERT INTO t1 (testdate) VALUES ('18-09-12');INSERT INTO t1 (testdate) VALUES ('2018.09.12');INSERT INTO t1 (testdate) VALUES ('2018 09 12');INSERT INTO t1 (testdate) VALUES ('0000-00-00');SELECT testdate FROM t1 WHERE testdate >= '2018-09-12';SELECT testdate FROM t1 WHERE testdate >= 20180912;SELECT MOD(testdate,100) FROM t1 WHERE testdate >= 20180912;SELECT testdate FROM t1 WHERE testdate >= '20180912';
Mysql允许存储"0000-00-00"作为DATE类型的"0"值,也称之为虚拟日期。在某些场景下比储存NULL值更便捷。如果将一个不合法的日期值保存到DATE类型字段中,mysql默认存储为"0000-00-00"。 如果不允许存储"0"值,请启用NO_ZERO_DATE参数。
也可使用unix_timestamp函数,将字符型的时间,转成unix时间戳。
select meeting_id,meeting_name,start_time,end_time from meeting_data where meeting_id REGEXP '[0-9]{4}0001' and unix_timestamp(start_time) < unix_timestamp(NOW()) and unix_timestamp(end_time) > unix_timestamp(NOW());
看完以上关于mysql时间作比较,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。
日期
字段
类型
字符
时间
字符串
查询
相同
分隔符
时候
格式
存储
情况
意义
数字
笔者
行业
表达式
便捷
字符型
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
sql数据库恢复已删除数据
南宁农场游戏软件开发公司
数据库版本与软件版本不一致
网络技术开发人员问答题
vmware虚拟数据库
未开展网络安全等级保护测评
地产软件开发收费
重庆家校通软件开发
日本代理服务器ip地址
afp服务器
软件开发工作的关键里程碑
数据库获取年龄函数
数据库小日期时间类型
怎么自学计算机网络技术
客家文书数据库
dayz单机服务器如何改时间
cf四大战区服务器在哪个城市
编写创建数据库
计算机网络技术是否学高数
胖达荣荣服务器
全球最新网络安全公司排名
jf服务器
网络安全有趣宣传
数据库怎么存储html标签
济南app软件开发公司
做软件开发win7
删除数据库对象的sql语句
资料放在电信服务器安全吗
数据库模型在线
mysql数据库安全措施