CREATE TABLE games
(
idg serial NOT NULL,
nation character(3),
points integer,
datag date,
CONSTRAINT pk_games PRIMARY KEY (idg)
)
idg nation points dateg
1 ita 12 2011-10-10
2 fra 9 2011-10-11
3 ita 4 2011-10-12
4 fra 8 2011-10-11
5 ger 12 2011-10-12
6 aut 6 2011-10-10
7 ita 11 2011-10-17
8 ita 10 2011-10-18
9 fra 9 2011-10-19
10 ger 15 2011-10-19
11 fra 16 2011-10-18
我想顯示按星期分組的最大三個總計。我明白我不能使用MAX(SUM(點),所以我做了一個查詢:返回Postgresql中每組(每週排名前3位)的前三個結果
select extract(week from datag) as "dateg", nation, sum(points) as "total"
from games
group by dateg, nation
order by dateg asc, total desc limit 3
但這些回報我只是前三合計怎樣才能使之成爲每星期(前三總數?在每個組,這將通過一種 「每週前3」)的任何IDEEA
提前9
由於在PostgreSQL工作
哪個版本您使用的?如果你運行的是8.4+,那麼比使用8.3或更早的版本要容易得多。 –
「PostgreSQL 9.0.4,由Visual C++編譯1500,64位」 – alinux