Why "SELECT * FROM table" is NOT a read
People tend to think that a SELECT-operation is always a read. This might look obvious and make sense but does it actually hold true?
Use HOT, so CLUSTER won't rot in PostgreSQL
by
Laurenz Albe |
06.2023CLUSTER is sometimes the last resort to squeeze performance out of an index scan. Normally, you have to repeat CLUSTER […]
Column order in PostgreSQL does matter
Column order can determine how quickly your data is processed in PostgreSQL. Find out how to troubleshoot performance problems in wide tables
Entity-attribute-value (EAV) design in PostgreSQL - don't do it!
by
Laurenz Albe |
11.2021 Customers have often asked me what I think of “Entity-attribute-value” (EAV) design. So I thought it would be a […]
JSON in PostgreSQL: how to use it right
by
Laurenz Albe |
09.2021 The comprehensive JSON support in PostgreSQL is one of its best-loved features. Many people – particularly those with a […]
PostgreSQL: Sophisticated temporary tables
There is more to temporary tables than meets the eye. Configure the lifespan of a temporary table and read more.
Understanding recursive queries in PostgreSQL
by
Laurenz Albe |
08.2020 Many people consider recursive queries a difficult topic. Still, they enable you to do things that would otherwise be […]
Composite type performance issues in PostgreSQL
Table functions & performance: Solve performance issues related to stored procedures and or a composite data type in PostgreSQL
Tracking view dependencies in PostgreSQL
by
Laurenz Albe |
09.2019 We all know that in PostgreSQL we cannot drop an object if there are view dependencies on it: [crayon-67e330d66a7c8794137303/] […]
CREATE VIEW vs ALTER TABLE in PostgreSQL
A view is a virtual table based on a SQL statement. What happens if the data structure of the underlying PostgreSQL table changes?