【发布时间】:2015-02-14 12:00:54
【问题描述】:
我想在 SELECT - WHERE IN 语句中为每个 id 选择最后 5 个条目。
//How to get last 5 entries for each id
SELECT * FROM table1
WHERE id IN (111,222,333,.....)
ORDER BY date DESC
LIMIT 5
编辑:数据结构示例
id date name
111 7-Nov Anna
111 8-Nov Belle
111 9-Nov Mary
111 10-Nov John
111 11-Nov Robert
111 12-Nov Gary
111 13-Nov Rick
222 8-Apr Sarah
222 9-Apr Lee
222 10-Apr Margaret
222 11-Apr Lisa
222 12-Apr Will
222 13-Apr Alex
222 14-Apr Kelly
222 15-Apr Lucas
期望的结果
id date name
111 13-Nov Rick
111 12-Nov Gary
111 11-Nov Robert
111 10-Nov John
111 9-Nov Mary
222 15-Apr Lucas
222 14-Apr Kelly
222 13-Apr Alex
222 12-Apr Will
222 11-Apr Lisa
我不确定这可以在 mysql 中完成。我尝试查看发布的一些答案,但找不到答案。
【问题讨论】:
-
@MarcoMura 我正在尝试获取每个 id 的最后 5 个条目(在 where - in 语句中)现在所有条目。
-
考虑提供适当的 DDL 和所需的结果
-
你不清楚。我们需要数据结构
-
考虑使用联合...
标签: php mysql select where-in sql-limit