Myślę, że mieszasz ANALYZE
z EXPLAIN ANALYZE
. Są różne rzeczy.
Jeśli chcesz kosztów i czasu zapytania bez stosowania zmian, jedyną realną opcją, jaką masz, jest rozpoczęcie transakcji, wykonanie zapytania w EXPLAIN ANALYZE
, a następnie ROLLBACK
.
To nadal wykonuje zapytanie, co oznacza, że:
- Czas procesora i I/O są zużywane
- Blokady są nadal brane i utrzymywane przez czas
- Nowe wiersze są w rzeczywistości zapisywane w tabelach i indeksach, ale nigdy nie są oznaczane jako widoczne. Są one czyszczone w następnym
VACUUM
.