【问题标题】:Find the last updated value in SQL在 SQL 中查找最后更新的值
【发布时间】:2021-12-29 13:26:41
【问题描述】:

我试图弄清楚如何在表中找到最后更新的值,即使有多个日期,示例数据:

entry date | Product | Stock
2021-01-04 | Apple.  | 234
2021-01-03 | Apple.  | 234
2021-01-02 | Apple.  | 234
2021-01-01 | Apple.  | 235

以下数据集显示,最后一次更新股票价值是在2021-01-02

我尝试使用自加入和 where not exists 语句,但我遇到的问题是日期是每天插入的输入日期,所以我不能使用最大日期。

有什么建议吗?

【问题讨论】:

    标签: sql amazon-redshift


    【解决方案1】:

    你可以试试下面的查询-

    SELECT MIN(entry_date), Product, Stock
      FROM (SELECT entry_date, Product, Stock,
                   RANK() OVER(ORDER BY entry_date) RN1,
                   RANK() OVER(PARTITION BY Stock ORDER BY entry_date) RN2
              FROM YOUR_TABLE)
     WHERE RN1-RN2 <> 0
     GROUP BY Product, Stock;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-17
      • 2021-04-29
      • 2019-11-22
      • 2021-04-16
      • 2012-08-27
      相关资源
      最近更新 更多