首页 > 解决方案 > 获取 sql 请求中某个项目的最后一次出现

问题描述

我正在尝试向我的数据库写入 sql 请求,以获取某个项目的最后一次出现,这就是我通过示例说明的意思:

pigc=# SELECT date FROM msr_history WHERE pos = 'DV' AND msr_id = 177;
            date            
----------------------------
 2018-06-20 08:04:09.724103
 2018-06-20 08:09:49.484921
(2 rows)

我的示例的第一行是我的 sql 请求,我试图只获取最后一个日期,在本示例中它将是这个:2018-06-20 08:09:49.484921 请注意,日期的数量可能不同,所以我不能只是手动选择每个日期的第二个日期时间。谢谢您的帮助。

标签: sqlpsql

解决方案


实现它的最快方法是在查询中使用 LIMIT 子句。这将阻止在您的查询中使用聚合函数并且运行速度最快 -

SELECT date
  FROM msr_history
 WHERE pos = 'DV'
   AND msr_id = 177
 ORDER BY date DESC
 LIMIT 1;

推荐阅读