Advertisement
Guest User

go_pivot

a guest
Aug 3rd, 2017
670
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.43 KB | None | 0 0
  1. CREATE OR REPLACE FUNCTION go_pivot RETURN VARCHAR2
  2.   IS
  3.       l_query LONG := 'select col2';
  4.   BEGIN
  5.       FOR x IN (SELECT DISTINCT col1 FROM test ORDER BY col1)
  6.       LOOP
  7.           l_query := l_query ||
  8.              REPLACE( q'|, sum(decode(col1,'$X$',v)) $X$|',
  9.                       '$X$',
  10.                      x.col1);
  11.      END LOOP;
  12.  
  13.      l_query := l_query || ' from test group by col2';
  14.  
  15.     RETURN l_query;
  16.  END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement