【问题标题】:MySQL query for maximum value of all records from last 5 daysMySQL查询过去5天所有记录的最大值
【发布时间】:2011-05-02 14:24:20
【问题描述】:

我有一个 MySQL 表:

myTable {Int id, Int value, Date date}

我希望找到过去 5 天所有记录的最大值。

到目前为止,我只设法获得了这一天所有记录的最大值:

SELECT max(`value`) FROM myTable where `date` = CURDATE()

或过去 5 天的所有记录:

SELECT * FROM myTable WHERE `date` BETWEEN CURDATE() - INTERVAL 5 DAY AND CURDATE()

如何获取过去 5 天所有记录的最大值?

【问题讨论】:

    标签: mysql


    【解决方案1】:

    怎么样:

    SELECT MAX(`value`) FROM myTable 
    WHERE `date` BETWEEN DATE_SUB(NOW(), INTERVAL 5 DAY) AND NOW()
    

    【讨论】:

      【解决方案2】:

      你可以创建一个临时表

      create temporary table temp_table SELECT * FROM myTable WHERE `date` BETWEEN CURDATE() - INTERVAL 5 DAY AND CURDATE()
      

      然后

      select max('value') from temp_table;
      

      【讨论】:

        猜你喜欢
        • 2011-01-03
        • 1970-01-01
        • 2013-07-08
        • 2020-03-21
        • 1970-01-01
        • 1970-01-01
        • 2015-02-02
        • 1970-01-01
        • 2020-07-27
        相关资源
        最近更新 更多