PG 9.5 brought very useful addition to GROUP BY clause – CUBE. With CUBE you can get in very simple way aggregated results over all possible combinations of columns enlisted in CUBE. But everything has its price – so here are some experiences with CUBE....
do $$ declare i int; j int; begin for i,j in (values(1,2),(2,3),(3,4)) loop raise NOTICE '%, %', i,j; end loop; end; $$
Language PL/pgSQL has one big disadvantage when you work with variable of type “record”. You cannot easily iterate over record columns because in this language record is not handled as “hashed” record like in JavaScript or Python etc....
So many people in PostgreSQL forums and mail lists do not understand why the hell should someone need to get DDL for table directly in PL/pgSQL. Everyone keeps recommend pg_dump. Well if you are one of them just skip this text. On the other hand if you also have this...
Do you need to drop all existing versions of some function without knowing anything about parameters? Try this: do $$ declare _rec record; begin for _rec in select 'drop function if exists '||ns.nspname||'.'||p.proname||'('||pg_catalog.<tt...
If you get to know them you will simply love them – I mean ARRAYs in PostgreSQL. And also in some situations you simply cannot live without them – at least in PostgreSQL. Here are some examples how to use them in real life. (still in TODO) Aggregations...
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Accept Reject Read More Privacy & Cookies Policy