【发布时间】:2017-09-11 22:58:39
【问题描述】:
我有一个像这样的“num”表的数据库
user_id | number | unix_time
-----------------------------
123 2 xxxxxxxx
123 40 xxxxxxxx
123 24 xxxxxxxx
333 23 xxxxxxxx
333 67 xxxxxxxx
854 90 xxxxxxxx
我想选择每个 user_id 插入的最后 5 个数字,但我不知道该怎么做。
我试过了:
SELECT b.n, a.user_id
FROM num a
JOIN num b on a.user_id = b.user_id
WHERE (
SELECT COUNT(*)
FROM num b2
WHERE b2.n <= b.n
AND b2.user_id = b.user_id
) <= 5
【问题讨论】:
-
欢迎来到 StackOverflow。请参观 stackoverflow.com/tour,学习提出好问题 stackoverflow.com/help/how-to-ask,制作 MCVE stackoverflow.com/help/mcve 对于 SQLite,MCVE 包括您的 SQLite 数据库的
.dump. -
“最后一个”是什么意思?最近根据列“unix_time”?然后你应该提供适当时间的样本数据。