【问题标题】:How to get all records with the last two dates如何获取最后两个日期的所有记录
【发布时间】:2022-11-01 20:32:52
【问题描述】:

我有一张包含日期和其他信息的表格,其中日期不连续(没有周末)。如何获取最近两天/日期的所有记录(我不一定事先知道)?

尽管

SELECT datum FROM trackproc ORDER BY datum DESC LIMIT 1;

给我最后的日期,并且

SELECT datum FROM trackproc ORDER BY datum DESC LIMIT 1,1;

倒数第二个,也就是我想要的,这个语句

SELECT * FROM trackproc 
WHERE datum BETWEEN (SELECT datum FROM trackproc ORDER BY datum DESC LIMIT 1) 
            AND     (SELECT datum FROM trackproc ORDER BY datum DESC LIMIT 1,1) 
ORDER BY datum;

返回空。

我怎么会写这样的声明?

【问题讨论】:

  • 你能显示你的表模式吗?基准数据类型是什么?

标签: mysql sql


【解决方案1】:

试试这个

SELECT *FROM trackproc WHERE datum BETWEEN DATE_SUB(DATE(NOW()), INTERVAL 2 DAY) AND DATE_SUB(DATE(NOW()), INTERVAL 1 DAY);

【讨论】:

    猜你喜欢
    • 2016-08-04
    • 2013-10-31
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    • 2019-03-14
    • 1970-01-01
    • 2012-11-19
    • 1970-01-01
    相关资源
    最近更新 更多