4 ms·
PostgreSQL does offer insights into the plan. Just put EXPLAIN before your query.
by rustyconover 6y ago
PostgreSQL does offer insights into the plan. Just put EXPLAIN before your query.
- LunaSea 6y agoRight but that's when you explicitly ask for it. However, you can't ask ask PostgreSQL to run a query and also return the query plan used for said query.
- theandrewbailey 6y agoUnless there's some weird edge case that I'm not aware of, Postgres will execute what it's planner tells it to. Passing a query to EXPLAIN will show the plan.
- LunaSea 6y agoQuery plans are based on database statistics. Explain will calculate the query plan for a query. Explain analyze will calculate the query plan, run the query and compare the query plan expectations to reality. However, if statistics change, so does the query plan. So if you run a query then run the same query again with explain analyze, you don't have a guarantee of getting the same information back. And since explain analyze doesn't return the query results you are obligated to run two separated queries.
- anarazel 6y ago> However, if statistics change, so does the query plan. So if you run a query then run the same query again with explain analyze, you don't have a guarantee of getting the same information back. And since explain analyze doesn't return the query results you are obligated to run two separated queries. If that's a problem you can use auto_explain.