【问题标题】:Picking order details from database in an interval间隔从数据库中提取订单详细信息
【发布时间】:2020-06-01 15:42:13
【问题描述】:

我想提取介于两者之间(最后 5 分钟 - 最后 10 分钟)的订单。为此,我正在运行一个查询:

$query="SELECT * FROM orders where `orderStatus`='PARTIAL' and `timeCreated` >= date_sub(now(),interval 10 minute)";

但是,此查询是从(过去 0 分钟 - 过去 10 分钟)之间挑选数据。

你能帮我试试吗?

【问题讨论】:

  • 您使用的是哪种 DBMS 产品? “SQL”只是一种查询语言,而不是特定数据库产品的名称。 Why should I tag my DBMS

标签: sql date select


【解决方案1】:

只需添加另一个过滤条件:

SELECT * 
FROM orders 
WHERE 
    orderStatus = 'PARTIAL' 
    AND timeCreated >= date_sub(now(), interval 10 minute)
    AND timeCreated <  date_sub(now(), interval 5 minute);

假设您使用的是 MySQL(现有查询的语法建议使用它),您还可以使用以下日期算术来表达查询,我觉得这更直接:

SELECT * 
FROM orders 
WHERE 
    orderStatus = 'PARTIAL' 
    AND timeCreated >= now() - interval 10 minute
    AND timeCreated < now() - interval 5 minute

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-26
    • 1970-01-01
    • 2015-01-09
    • 1970-01-01
    • 2017-01-17
    • 2023-03-30
    • 2023-02-01
    相关资源
    最近更新 更多