【问题标题】:Limit Table By Latest/Highest Date最新/最高日期限制表
【发布时间】:2021-05-20 14:55:04
【问题描述】:

我正在尝试从下面这样的表格中进行选择,并将其限制为最晚日期。

record_date Name Age
2021-05-19 John 21
2021-05-19 Smith 25
2021-05-19 Mary 20
2021-05-20 Ann 26
2021-05-20 Jane 23

我试过了

SELECT * FROM table WHERE DATE(record_date) BETWEEN MAX(DATE(record_date)) AND MAX(DATE(record_date)) 

上面的代码不起作用,但这是我试图在下面实现的:

record_date Name Age
2021-05-20 Ann 26
2021-05-20 Jane 23

我不想将日期硬编码到报表中,因为每天都有记录,所以它必须能够选择最晚的日期并仅限于此。谢谢!

【问题讨论】:

  • 好吧,将其设为where record_date = (SELECT MAX(record_date) from table) 会更有意义

标签: mysql


【解决方案1】:

类似:

select * from table where record_date = (select max(record_date) from table)

【讨论】:

    【解决方案2】:

    使用JOIN 的另一个查询

    select t.* 
    from t
    join (select max(record_date) max_date from t) max_date_t on record_date = max_date;
    

    MySQL fiddle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-10
      • 2011-05-22
      • 2017-08-14
      • 1970-01-01
      • 2014-10-21
      • 2017-08-25
      • 2017-12-25
      • 2013-02-16
      相关资源
      最近更新 更多