Sobes.tech
Back to questions
Junior — Middle
62

Каким образом можно просмотреть план выполнения SQL-запроса в базе данных?

Answer from AI

sobes.tech AI

Чтобы просмотреть план выполнения SQL-запаcа, обычно используют команду EXPLAIN (или её вариации, в зависимости от СУБД). План выполнения показывает, как база данных собирается выполнить запрос: какие индексы будут использованы, порядок соединения таблиц, оценённые затраты и т.д.

Например, в PostgreSQL можно выполнить:

EXPLAIN SELECT * FROM users WHERE age > 30;

В Python, используя библиотеку для работы с базой (например, psycopg2 для PostgreSQL), можно выполнить этот запрос и вывести результат:

import psycopg2

conn = psycopg2.connect(dbname='testdb', user='user', password='pass')
cursor = conn.cursor()
cursor.execute("EXPLAIN SELECT * FROM users WHERE age > 30;")
plan = cursor.fetchall()
for row in plan:
    print(row[0])

Это поможет понять, насколько эффективно выполняется запрос и где можно оптимизировать его работу.