记录|SQL中日期查询出现的问题

目录


前言

参考文章:


一、BETWEEN AND问题

假设这是我的表中信息:

我想查询2024-10-16到2024-10-17的数据,理论上用Between and就行,如下所示:

sql 复制代码
SELECT create_time AS '日期', historical_alarm AS '报警信息' FROM historical_alarm_info WHERE create_time BETWEEN '2024-10-16' AND '2024-11-17' ORDER BY id DESC

但是,实际上,这个是查询不到2024-11-17 11::06:51的。应该用下面的语句:

sql 复制代码
SELECT create_time AS '日期', historical_alarm AS '报警信息' FROM historical_alarm_info WHERE create_time BETWEEN '2024-10-16' AND '2024-10-17 23:59:59' ORDER BY id DESC

虽然这样解决了查询的时候范围不是闭空间的问题。但是这样查询出来后的时间是带时分秒的。


二、时间带有时分秒

查询后的结果是不希望带上时分秒,该怎么做?

那就使用 DATE() 函数来提取日期部分

sql 复制代码
SELECT DATE(create_time) AS '日期', historical_alarm AS '报警信息' FROM historical_alarm_info WHERE create_time BETWEEN '2024-10-16' AND '2024-10-17 23:59:59' ORDER BY id DESC

执行后的结果为:


更新时间

  • 2024.10.30:创建。
相关推荐
IT摆渡者5 小时前
MySQL性能巡检脚本分析报告
数据库·mysql
Lyyaoo.6 小时前
Redis基础
数据库·redis·缓存
杨云龙UP6 小时前
ODA登录ODA Web管理界面时提示Password Expired的处理方法_20260423
linux·运维·服务器·数据库·oracle
解救女汉子6 小时前
SQL触发器如何获取触发源应用名_利用APP_NAME函数追踪
jvm·数据库·python
陈皮糖..7 小时前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
weixin_520649878 小时前
数据库函数
数据库
Bert.Cai8 小时前
MySQL LPAD()函数详解
数据库·mysql
OnlyEasyCode10 小时前
Navicat 任务自动备份指定数据库
数据库
if else10 小时前
Redis 哨兵集群部署方案
数据库·redis
yejqvow1210 小时前
Pandas 高效实现组内跨行时间戳匹配与布尔标记
jvm·数据库·python