记录|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:创建。
相关推荐
奶糖趣多多10 分钟前
Redis知识点
数据库·redis·缓存
数新网络1 小时前
《深入浅出Apache Spark》系列②:Spark SQL原理精髓全解析
大数据·sql·spark
CoderIsArt1 小时前
Redis的三种模式:主从模式,哨兵与集群模式
数据库·redis·缓存
师太,答应老衲吧3 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Channing Lewis4 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
毕业设计制作和分享6 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil276 小时前
Redis - String 字符串
数据库·redis·缓存
NiNg_1_2346 小时前
高级 SQL 技巧详解
sql
Hsu_kk7 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql
编程学无止境7 小时前
第02章 MySQL环境搭建
数据库·mysql