首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >2小时前和3天前之间的MySQL时间戳

2小时前和3天前之间的MySQL时间戳
EN

Stack Overflow用户
提问于 2018-06-05 07:34:16
回答 1查看 887关注 0票数 0

正在尝试对TIMESTAMP字段执行MySQL查询。

我接近于得到正确的结果,但它总是落后3天,当天什么都没有。我相信这与使用带有TIMESTAMP字段的BETWEEN有关。

SELECT
    billing_first_name,
    cart_id,
    placed_ts,
    s_email           
FROM   `orders`
WHERE `paypal_response` IS NULL
   AND `authorize_response` IS NULL
   AND `s_email` IS NOT NULL
   AND (`placed_ts` BETWEEN
        DATE_SUB(DATE(NOW()), INTERVAL 3 DAY)
        AND DATE_SUB(DATE(NOW()), INTERVAL 2 HOUR))     
GROUP BY `cart_id`
ORDER BY placed_ts DESC
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-05 08:08:31

这是因为您使用的不仅仅是NOW(),而是DATE(NOW())。这丢弃了一天中的时间,所以它从一天的开始减去2小时(即前一天晚上10点),而不是现在之前的2小时。

AND (`placed_ts` BETWEEN
    DATE_SUB(DATE(NOW()), INTERVAL 3 DAY)
    AND DATE_SUB(NOW(), INTERVAL 2 HOUR))     
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50690118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档