Sobes.tech
Junior — Middle

Môžete vysvetliť účel príkazu EXPLAIN v PostgreSQL a ako pomáha optimalizovať dotazy?

sobes.tech AI

Odpoveď od AI

Príkaz EXPLAIN v PostgreSQL sa slúži na získanie plánu vykonávania SQL dotazu. Ukazuje, ako databáza plánuje vykonať dotaz — aké indexy budú použité, ako budú spojené tabuľky, koľko riadkov sa očakáva, že budú spracované, atď.

Pomáha optimalizovať dotazy identifikovaním úzkych miest, napríklad:

  • Chýbajúce indexy, čo vedie k úplnému prehľadávaniu tabuľky.
  • Nesprávne poradie spojení tabuliek.
  • Nadbytočné operácie zoradenia alebo agregácie.

Príklad použitia:

EXPLAIN SELECT * FROM users WHERE email = 'example@mail.com';

Výsledok ukáže, či bude použitý index na poli email alebo či bude vykonané sekvenčné prehľadávanie.

Pre podrobnejšiu analýzu možno použiť EXPLAIN ANALYZE, ktoré vykoná dotaz a ukáže skutočné časové náklady.