选择与 SQLite 中的条件匹配的最新行

pin*_*508 5 sql sqlite select greatest-n-per-group

假设我有一张桌子:

Name, status, timestamp
Run Code Online (Sandbox Code Playgroud)

我想选择与 status='active' 匹配的行,但仅选择那些具有最新时间戳的行。因此,如果有这样的行:

Bob, active, 5/10/2010
Bob, active, 6/12/2010
Ann, inactive, 6/12/2000
Ann, active, 9/3/2009
Ann, active, 9/25/2010
Run Code Online (Sandbox Code Playgroud)

我希望它返回:

Bob, active, 6/12/2010
Ann, active, 9/25/2010
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?我正在使用 SQLite,如果有的话。

谢谢。

Dan*_*uyo 4

select name, status, max(timestamp) 
from my_table 
where status = 'active' 
group by name, status
Run Code Online (Sandbox Code Playgroud)

看看http://www.w3schools.com/sql/sql_groupby.asp