You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL如何查询指定日期落在起止日期区间内的表记录?

正确的SQL查询语句

你的问题出在end字段的条件判断上,原语句里end <= '2023-01-13'会筛选出结束日期早于等于指定日期的记录,而你需要的是指定日期落在start和end区间内,也就是指定日期要大于等于start,同时小于等于end。

正确的查询语句如下:

SELECT * FROM pr_calendar WHERE start <= '2023-01-13' AND end >= '2023-01-13';

验证说明

结合你的表数据:

  • room 5的start是2023-01-07,end是2023-01-14,2023-01-13满足2023-01-07 <= 2023-01-13 <= 2023-01-14,会被筛选出来;
  • room 6的end是2023-01-05,早于2023-01-13,不满足条件,不会被返回。

这样就能得到你需要的、指定日期落在区间内的记录了。

内容的提问来源于stack exchange,提问作者user1272597

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 02:10:51