Hacker News new | ask | show | jobs
by fleetside72 3172 days ago
Here's a couple reasons: - call functions(stored procs) as tables and join to them - regular expressions - order by in your views & functions - order by INSIDE your aggregates - create your own aggregates - make your own window functions - left join on your recursive CTE - put temp tables in your function(stored proc) that you can also call as a table (see above) - lateral joins - filter syntax to do pivots - WITH ORDINALITY - generate_series - dollar quoting - write-able CTE's - arrays - ranges - intervals - jsonb (which can be indexed)

1. transformative/analytic functions 2. huge variety persisted formats 3. ability to store logic in the DB tier and re-use it