window functions maybe bug - Mailing list pgsql-hackers

From Pavel Stehule
Subject window functions maybe bug
Date
Msg-id 162867790909020502v64f57bc0h47f4de785a33d666@mail.gmail.com
Whole thread Raw
Responses Re: window functions maybe bug
List pgsql-hackers
Hello,

I wrote article about statistical function - when I tested Joe Celko's
method, I found some problems on not unique dataset:

on distinct dataset is rule so rows here is max(hi), then there is min(lo):

create table x1 (a integer);

insert into x1 select generate_series(1,10);

postgres=# select row_number() over (order by a), row_number() over
(order by a desc) from x1;row_number | row_number
------------+------------        10 |          1         9 |          2         8 |          3         7 |          4
     6 |          5         5 |          6         4 |          7         3 |          8         2 |          9
1|         10
 
(10 rows)

but on other set I got

truncate table x1;
insert into x1 values(2),(2),(3),(3),(4),(4),(5),(5),(6),(6),(6),(8),(9),(9),(10),(10);

postgres=# select row_number() over (order by a), row_number() over
(order by a desc) from x1;row_number | row_number
------------+------------        16 |          1        15 |          2        14 |          3        11 |          4
    13 |          5        12 |          6         9 |          7        10 |          8         7 |          9
8|         10         5 |         11         6 |         12         4 |         13         3 |         14         1 |
     15         2 |         16
 
(16 rows)

I am not sure, is this correct? When this solution is correct, then
Joe Celko's method for median calculation is buggy.

Regards
Pavel Stehule


pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: community decision-making & 8.5
Next
From: Merlin Moncure
Date:
Subject: Re: Adding \ev view editor?