У меня есть таблица с тремя столбцами: категория, отметка времени и значение.
Я хочу выбрать SQL, который даст мне 5 самых последних значений каждой категории. Как мне поступить и сделать это?
Я пробовал это:
select
a."Category",
b."Timestamp",
b."Value"
from
(select "Category" from "Table" group by "Category" order by "Category") a,
(select a."Category", c."Timestamp", c."Value" from "Table" c
where c."Category" = a."Category" limit 5) b
К сожалению, он этого не допустит, поскольку «подзапрос в FROM не может ссылаться на другие отношения того же уровня запроса».
Кстати, я использую PostGreSQL 8.3.
Любая помощь будет оценена.