Sobes.tech
Middle+

Qual è la differenza tra EXPLAIN e EXPLAIN ANALYZE in PostgreSQL?

sobes.tech AI

Risposta dell'AI

In PostgreSQL, il comando EXPLAIN mostra il piano di esecuzione di una query SQL, ovvero come il database intende eseguirla (ad esempio, quali indici usare, l'ordine delle operazioni).

EXPLAIN ANALYZE non solo mostra il piano, ma esegue effettivamente la query, raccogliendo statistiche sui tempi di esecuzione di ogni fase. Questo permette di ottenere informazioni reali sulle prestazioni della query.

Esempio:

EXPLAIN SELECT * FROM users WHERE id = 1;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 1;

La prima query mostrerà solo il piano, la seconda — il piano più i costi reali in tempo e il numero di righe elaborate.