在 SQL 中查找最后更新的值
Posted
技术标签:
【中文标题】在 SQL 中查找最后更新的值【英文标题】:Find the last updated value in 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 语句,但我遇到的问题是日期是每天插入的输入日期,所以我不能使用最大日期。
有什么建议吗?
【问题讨论】:
【参考方案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;
【讨论】:
以上是关于在 SQL 中查找最后更新的值的主要内容,如果未能解决你的问题,请参考以下文章