只获取最近的前一条记录,而不是所有的前一条记录

drkbr07n  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(380)

我有这个样品表:

  1. id room_id gauge date
  2. 1 1 10 2018-10-03
  3. 2 2 17 2018-10-03
  4. 3 1 16 2018-10-05
  5. 4 2 25 2018-10-05

我只想得到最近的一张2018年10月5日的记录,作为我以前的测量表。我该怎么做?
我的尝试:

  1. SELECT * FROM sample WHERE date > (SELECT MAX(date) FROM sample)
n7taea2i

n7taea2i1#

试试这个

  1. SELECT * FROM sample WHERE date = (SELECT MAX(date) FROM sample)

你想赶上的日期是 GREATER THAN 在你的领域的最大日期。所以结果不会显示,因为最大日期是 2018-10-05 . 意味着只会检索到较大的值。

slsn1g29

slsn1g292#

您应该声明日期等于表中最近的日期:

  1. SELECT * FROM sample WHERE date = (SELECT MAX(date) FROM sample);

相关问题