【问题标题】:SELECT between today and yesterday在今天和昨天之间选择
【发布时间】:2014-05-25 09:00:11
【问题描述】:

我正在尝试在这样的两个日期之间进行选择:

SELECT p.Code, p.Name, sum(h.PA = 1) AS PA, sum(h.PB = 1) AS PB, 
    sum(h.PG = 1) AS PG, sum(h.GoedkeuringDoorNew = 'GF') AS GF, 
    sum(h.GoedkeuringDoorNew = 'SB') AS SB, sum(h.GoedkeuringDoorNew = 'VIA') AS VIA,
    sum(h.Blanco) AS Blanco
FROM psthostess p 
LEFT JOIN `psttodo-uit` h 
    ON h.`Hostess Code` = p.Code 
    AND DATE(h.`afgewerkt tablet datum`) BETWEEN CURDATE() 
    AND (CURDATE() - INTERVAL 1 DAY)
WHERE p.Indienst = 1 GROUP BY p.Code, p.Name

但我没有得到任何结果。

我想要今天和昨天的结果。但是当我这样做时

SELECT *
FROM `psttodo-uit` p
WHERE DATE(p.`afgewerkt tablet datum`) = CURDATE() - INTERVAL 1 DAY

或将CURDATE() - INTERVAL 1 DAY 更改为CURDATE() 我得到结果...这是怎么来的?

【问题讨论】:

    标签: mysql sql date select


    【解决方案1】:
     Select *  from  emp where joindate between SUBDATE(NOW(),1) and NOW();
    

    【讨论】:

    • 感谢您的回答,但能否请您提供一些关于它在做什么的评论
    【解决方案2】:
    WHERE p.`afgewerkt tablet datum` >= CURDATE() - INTERVAL 1 DAY 
          AND p.`afgewerkt tablet datum` < CURDATE() + INTERVAL 1 DAY 
    

    假设当前日期和时间是:2014 年 4 月 11 日下午 5:30,您需要的日期时间在
    2014 年 4 月 10 日 00:00:004 月 11 日之间, 2014 23:59:59(含)

    CURDATE() - INTERVAL 1 DAY => April 10, 2014 00:00:00
    CURDATE() + INTERVAL 1 DAY => April 12, 2014 00:00:00
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-14
      • 2021-02-16
      • 1970-01-01
      相关资源
      最近更新 更多