カテゴリ、タイムスタンプ、および値の3つの列を持つテーブルがあります。各カテゴリのトップ5のSQLクエリ
私が望むのは、各カテゴリの最新の5つの値を私に与えるSQLの選択です。私はどうやってそれをやりますか?
私はこれを試してみました:
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を使っています。
ご協力いただければ幸いです。
類似の質問:http://stackoverflow.com/questions/1146913/select-10-rows-perday-with-order/1174434#1174434 – krdluzni
n個のカテゴリがあります。@hobodave –
私はあまり単純化していません。 3から30000までの任意の数のカテゴリがあります。 –