gpt4 book ai didi

mysql - 根据多行的日期/时间范围选择记录

转载 作者:行者123 更新时间:2023-11-29 10:00:35 24 4
gpt4 key购买 nike

我有以下表结构

id          date             time            discount
------------------------------------------------------
1 2015-08-10 09:30:00 50%
2 2016-04-15 14:00:00 30%
3 2018-01-25 18:15:00 75%
4 2018-11-19 11:45:00 45%

我想查询此表以查找特定日期的折扣金额;

预期结果;

如果我查询2015-08-10 09:30:00 - 2016-04-15 13:59:59之间的日期,它应该结果50%

对于 2016-04-15 14:00:00 - 2018-01-25 18:14:59 之间的日期,结果应为 30%

示例:

Query to this table for date 2016-01-10 08:00:00 should result 50%

我已通过 SO 和 Google 进行搜索,但找不到适合我的情况的解决方案;

尝试对我的示例进行查询,例如

SELECT * FROM discounts WHERE date<='2016-01-10' AND time<='08:00:00'
ORDER BY date DESC LIMIT 1

但运气不好!

非常感谢任何帮助。

最佳答案

您可以在表结构中使用类似的内容 -

从折扣中选择折扣 WHERE CAST(CONCAT(date, ““, time) AS DATETIME) BETWEEN “2015-08-10 09:30:00” AND “2016-04-15 13:59:59”

您也许可以在不转换值的情况下逃脱,但这将确保您的日期和时间值的格式正确。

但是,我建议将日期和时间值存储为单个标准日期时间值。您将其分成两个单独的列是否有原因?

关于mysql - 根据多行的日期/时间范围选择记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53072999/

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