使用 MySQL 查询每天上午 11 点之前
Posted
技术标签:
【中文标题】使用 MySQL 查询每天上午 11 点之前【英文标题】:Query for daily before 11am with MySQL 【发布时间】:2021-09-19 00:21:26 【问题描述】:我有一个 datetime 字段并希望在上午 11 点之前获取所有条目。它适用于在线商店,您可以在上午 11:00 之前订购,并且将在同一天发货。
SELECT *
FROM Tablename
WHERE (order.date_added < STR_TO_DATE(YEAR(), MONTH(), DAY()'%Y %d,%M'), '11:00:00')
很遗憾,我不知道如何组合这个语句。
【问题讨论】:
什么是filed
,我没有看到任何涉及11:00:00
的操作。
filed.date_added
【参考方案1】:
如果您想在今天上午 11:00 之前下单,,您可以使用:
where o.date_added >= curdate() and
time(o.date_added) < '11:00:00'
【讨论】:
感谢您的回答正是我想要的。现在我可以再增加 5 分钟,让每个人都满意并得到他的订单。谢谢你的帮助。SELECT * FROM order WHERE order.date_added >= curdate() and time(order.date_added) < '11:05:00'
【参考方案2】:
这会为您提供当前 11 点的时间
CurDATE() + INTERVAL 11 HOUR
查询选择昨天 11 到今天 11 之间的所有订单。
您还应该添加标准以排除所有已下达的订单
CREATE tABLe orders (date_added DATETIME)
INSERT INTO orders VALUES (NOW() -INTERVAL 10 HOUR)
|添加日期 | | :----------------- | | 2021-07-08 06:40:50 |SELECT * FROM orders WHERE orders.date_added BETWEEN (CurDATE() - INTERVAL 1 DAY) + INTERVAL 11 HOUR AND CurDATE() + INTERVAL 11 HOUR
| CurDATE() + 间隔 11 小时 | | :---------------------------- | | 2021-07-08 11:00:00 |SELECT CurDATE() + INTERVAL 11 HOUR
db小提琴here
【讨论】:
以上是关于使用 MySQL 查询每天上午 11 点之前的主要内容,如果未能解决你的问题,请参考以下文章