gpt4 book ai didi

SQLite基于时间格式的SELECT记录 "HH:mm:ss"

转载 作者:行者123 更新时间:2023-12-02 04:52:03 25 4
gpt4 key购买 nike

这是我的 SQLite 数据库表:

+----+-----------+----------+
| ID | StartTime | EndTime |
+----+-----------+----------+
| 1 | 07:00:01 | 23:00:00 |
| 2 | 23:00:01 | 07:00:00 |
+----+-----------+----------+

现在我在创建 SQL 查询来选择它们时遇到问题。

  • 时间1='14:00:00'

我用过

SELECT * FROM 'table' 
WHERE StartTime <= '14:00:00'
AND EndTime >= '14:00:00';

选择Time1返回的结果是正确,我得到了我想要的。

但是

  • 时间2='07:00:00'
  • 时间3='06:00:00'

对于 Time2Time3,我似乎无法确定 SELECT 语句条件应该是什么?

问题

处理这种情况的算法和SQLite语句应该是什么,即当Time1时,仅返回ID 1,当Time2时和Time3,只返回ID 2

我使用Java来执行SQLite语句,因此我不确定是否支持所有功能。

最佳答案

这是一个示例查询 ( SQLFiddle ):

select * from t where 
(
(StartTime<=EndTime) and
('07:00:00' between StartTime and EndTime)
)
or
(
(StartTime>EndTime) and
(
('07:00:00' between StartTime and '23:59:59')
or
('07:00:00' between '00:00:00' and EndTime)

)
);

关于SQLite基于时间格式的SELECT记录 "HH:mm:ss",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11948904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com