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

MySQL:如何筛选resetTime在23:50至0:10之间的UserID

查询跨午夜时间段的用户ID

现有数据表结构及数据如下:

UserIDresetTime
220:00
321:00
422:00
523:30
623:50
70:00
80:10
95:00

问题需求

筛选出resetTime在23:50 至 0:10之间的所有UserID。

解决方案

由于resetTime是字符串类型,且目标时间段跨午夜(当天深夜到次日凌晨),直接使用BETWEEN会因为字符串字典序比较规则失效(比如'0:00'字典序小于'23:50'),因此需要拆分条件用逻辑或实现:

SELECT UserID
FROM your_table
WHERE resetTime >= '23:50' 
   OR resetTime <= '0:10';

如果希望更严谨地基于时间类型比较,可以先将字符串转换为时间类型(以MySQL为例):

SELECT UserID
FROM your_table
WHERE STR_TO_DATE(resetTime, '%H:%i') >= STR_TO_DATE('23:50', '%H:%i')
   OR STR_TO_DATE(resetTime, '%H:%i') <= STR_TO_DATE('0:10', '%H:%i');

以上两种写法都会返回符合条件的UserID:6、7、8。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 04:03:05