Select SQLite按库存符号选择最后2条记录
我有一个SQLite3股票价格表(见下面的示例)。我想定义一个SELECT语句,该语句将按时间戳按降序检索每个股票符号(组)的最后2条记录。表的主键是Symbol+TimeStampSelect SQLite按库存符号选择最后2条记录,select,sqlite,group-by,limit,Select,Sqlite,Group By,Limit,我有一个SQLite3股票价格表(见下面的示例)。我想定义一个SELECT语句,该语句将按时间戳按降序检索每个股票符号(组)的最后2条记录。表的主键是Symbol+TimeStamp Symbol TimeStamp Close ZXYZ 2/12/2016 16:00 17.81 ZXYZ 2/16/2016 16:00 18.83 ZXYZ 2/17/2016 16:00 19.38 ZXYZ 2/18/2016 16:00 19.55 <-- ZXYZ
Symbol TimeStamp Close
ZXYZ 2/12/2016 16:00 17.81
ZXYZ 2/16/2016 16:00 18.83
ZXYZ 2/17/2016 16:00 19.38
ZXYZ 2/18/2016 16:00 19.55 <--
ZXYZ 2/19/2016 16:00 20.31 <--
ZAGG 2/12/2016 16:00 9.10
ZAGG 2/16/2016 16:00 9.70
ZAGG 2/17/2016 16:00 9.59
ZAGG 2/18/2016 16:00 9.62 <--
ZAGG 2/19/2016 16:00 10.01 <--
ZAYO 2/12/2016 16:00 21.89
ZAYO 2/16/2016 16:00 23.22
ZAYO 2/17/2016 16:00 23.63
ZAYO 2/18/2016 16:00 23.80 <--
ZAYO 2/19/2016 16:00 23.51 <--
感谢您的帮助。我认为这在SQLite中会起作用:
select sp.*
from stockprices sp
where sp.timestamp in (select sp2.timestamp
from stockprices sp2
where sp2.symbol = sp.symbol
order by sp2.timestamp desc
limit 2
)
order by sp.symbol, sp.timestamp desc;
我认为这将在SQLite中起作用:
select sp.*
from stockprices sp
where sp.timestamp in (select sp2.timestamp
from stockprices sp2
where sp2.symbol = sp.symbol
order by sp2.timestamp desc
limit 2
)
order by sp.symbol, sp.timestamp desc;