SQL从一组数据中获取最新记录

时间:2014-01-31 15:25:28

标签: mysql sql

所以我有一个持有表,其中每个持有都有一个日期列。 e.g。

id   |   holding_name   |   value   |   holding_date
----------------------------------------------------
1    |   iShares MSCI   |   2032    |   2013-12-31
2    |   Vanguard Bonds |   5332    |   2013-12-31
3    |   iShares MSCI   |   2241    |   2014-01-31
4    |   Vanguard Bonds |   6236    |   2014-01-31

如果我只想选择最新的藏品

SELECT * FROM holdings WHERE holdings.holding_date = '2014-01-31'

但如果我不知道最新日期是2014-01-31呢?有没有办法将其构建到查询中?

1 个答案:

答案 0 :(得分:6)

SELECT *
FROM holdings
WHERE holding_date = (SELECT MAX(holding_date) from holdings)