Используйте LIMIT
Must Have
Если вам нужны только первые N строк результата, всегда используйте LIMIT
- это позволит БД оптимизировать выполнение запроса.
Неоптимальный запрос:
SELECT customer_id, order_date, amount
FROM orders;
Оптимальный запрос:
SELECT customer_id, order_date, amount
FROM orders
LIMIT 10;
Избегайте ненужных ORDER BY
Must Have
Сортировка - одна из самых ресурсоемких операций. Если порядок строк не важен, не используйте ORDER BY
или используйте только на маленьких объемах данных.
Неоптимальный запрос:
SELECT customer_id, SUM(amount) as total
FROM orders
GROUP BY customer_id
ORDER BY customer_id; -- Не нужно, если порядок не важен
Оптимальный запрос:
SELECT customer_id, SUM(amount) as total
FROM orders
GROUP BY customer_id;
Список колонок в SELECT
Must Have
Выбирайте только те колонки, которые действительно нужны, вместо использования SELECT *
. Это уменьшает объем данных, которые нужно прочитать и передать.
Неоптимальный запрос:
SELECT * FROM customers JOIN orders ON customers.id = orders.customer_id;
Оптимальный запрос:
SELECT c.name, c.email, o.order_date, o.amount
FROM customers c JOIN orders o ON c.id = o.customer_id;