Мисля, че обърквате ANALYZE с EXPLAIN ANALYZE . Има различни неща.
Ако искате разходи за заявка и време без прилагане на промените, единствената реална опция, която имате, е да започнете транзакция, изпълнете заявката под EXPLAIN ANALYZE и след това ROLLBACK .
Това все още изпълнява заявката, което означава, че:
- CPU време и I/O се изразходват
- Заключванията все още се вземат и задържат за времето
- Новите редове всъщност се записват в таблиците и индексите, но никога не се маркират като видими. Те се почистват при следващия
VACUUM.