每天上午 11 点前使用 MySQL 查询

问题描述

我有一个 datetime 字段,希望在上午 11 点之前获取所有条目。适用于在线商店,您可以在上午 11:00 之前订购,并在当天发货。

SELECT * 
FROM Tablename 
WHERE (order.date_added < STR_TO_DATE(YEAR(),MONTH(),DAY()'%Y %d,%M'),'11:00:00')

不幸的是,我不知道如何组合这个语句。

解决方法

如果您想在今天上午 11:00 之前下单,您可以使用:

df['year'] 
,

这会为您提供当前日期 11 点

CurDATE() + INTERVAL  11 HOUR

并且查询选择了昨天 11 日到今天 11 日之间的所有订单。

您还应该添加排除所有已下订单的条件

CREATE tABLe orders (date_added DATETIME)
INSERT INTO orders VALUES (NOW() -INTERVAL 10 HOUR)
SELECT * 
FROM orders 
WHERE orders.date_added BETWEEN (CurDATE() - INTERVAL 1 DAY) + INTERVAL  11 HOUR AND  CurDATE() + INTERVAL  11 HOUR
| date_added          |
| :------------------ |
| 2021-07-08 06:40:50 |
SELECT CurDATE() + INTERVAL  11 HOUR
| CurDATE() + INTERVAL  11 HOUR |
| :---------------------------- |
| 2021-07-08 11:00:00           |

dbfiddle here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...