sql - Pivot in PostgreSQL -
i trying find way pivot in postgres can’t use , trying find way. found following website explains pivot in sql server , in example 1 want do. http://sqlhints.com/2014/03/10/pivot-and-unpivot-in-sql-server/
the example is:
create table coursesales(course varchar(50),year int,earning money); insert coursesales values('.net',2012,10000); insert coursesales values('java',2012,20000); insert coursesales values('.net',2012,5000); insert coursesales values('.net',2013,48000); insert coursesales values('java',2013,30000); with pivot function query following:
select *from coursesales pivot(sum(earning) course in ([.net], java)) pvttable; i same in postgresql dynamic way above.
i'm not familiar postgresql myself, there alternate way pivot date known colloquially cross-tab-pivoting. here's example of how rewrite query above, , i'm pretty sure these operators exists in postgre
create table coursesales(course varchar(50),year int,earning money); insert coursesales values('.net',2012,10000); insert coursesales values('java',2012,20000); insert coursesales values('.net',2012,5000); insert coursesales values('.net',2013,48000); insert coursesales values('java',2013,30000); -- version (aka tsql) select *from coursesales pivot(sum(earning) course in ([.net], java)) pvttable; -- cross-tab select year, sum(case when course = '.net' earning else 0 end) net, sum(case when course = 'java' earning else 0 end) java coursesales group year here's article on cross tab pivots. again, know tsql specific, operators should allow similar functionality in ansi sql dialect.
Comments
Post a Comment