PostgreSQL 9.5 RC1 Released
postgresql.org
postgresql.org
https://wiki.postgresql.org/wiki/What%27s_new_in_PostgreSQL_...
[0]: http://rhaas.blogspot.co.uk/2015/03/parallel-sequential-scan...
[1]: http://rhaas.blogspot.co.uk/2015/11/parallel-sequential-scan...
You could do details and groupwise maximums together with ROLLUP and some grouping-based conditional expressions in the SELECT clause, or just by UNIONing a detail query with the groupies maximums.
Modification of JSON field values! This makes Postgres a completely functional JSON store.
[1] https://wiki.postgresql.org/wiki/What's_new_in_PostgreSQL_9....
Auth was a pain as you had to write triggers for each table action to check that a user can access a record, but this new row level security will make things easy.
DROP SCHEMA public CASCADE;
CREATE SCHEMA public; create trigger tgr_whatever
INSTEAD OF {update,insert,delete} on some_complex_view
[for each row]
<code goes here>
Sometimes, if you run a DML statement on a view, the database can figure out how to translate that into DML on the underlying tables.Sometimes it can't. In this case the view is not updateable, unless you define appropriate "instead of" triggers on it. Some databases allow you do define these as statement-level triggers, that is without the "for each row" part. In that case the trigger will be passed all of the affected rows at once.