blob: 719bfb43b9fe115f51e331f54829723cbbb15f4e [file] [log] [blame]
-- Test deparsing of window functions
set client_min_messages = 'WARNING';
drop schema if exists window_views cascade;
create schema window_views;
set search_path=window_views;
CREATE TABLE testtab (a int4, b int4);
reset client_min_messages;
create view v1 as
select avg(a) over (partition by b)
from testtab;
select pg_get_viewdef('v1');
create view v2 as
select avg(a) over (order by b)
from testtab;
select pg_get_viewdef('v2');
create view v3 as
select avg(a) over (partition by a order by b)
from testtab;
select pg_get_viewdef('v3');
create view v4 as
select avg(a) over (w)
from testtab window w as ();
select pg_get_viewdef('v4');
create view v5 as
select avg(a) over (w order by b)
from testtab window w as (partition by a);
select pg_get_viewdef('v5');
create view v6 as
select avg(a) over (w order by a)
from testtab window w as ();
select pg_get_viewdef('v6');
create view v7 as
select avg(a) over (w)
from testtab window w as (order by a);
select pg_get_viewdef('v7');
create view v8 as
select avg(a) over (w)
from testtab window w as (order by a rows between unbounded preceding and unbounded following);
select pg_get_viewdef('v8');
create view v9 as
select avg(a) over (w)
from testtab window w as (order by a rows between 1 preceding and 1 following);
select pg_get_viewdef('v9');
create view v10 as
select avg(a) over (w rows between 1 preceding and 1 following)
from testtab window w as (order by a);
select pg_get_viewdef('v10');
-- Check that COUNT(*) is dumped with the star intact.
create view v_star as
select count(*) over (partition by a)
from testtab;
select pg_get_viewdef('v_star');