TGViewer
Базы данных (Data Base) Базы данных (Data Base) @database_info · 8.05K subscribers
Post #1391 2.96K
🔍 Как ускорить SELECT в больших таблицах?

Сегодня расскажу, как можно ускорить выборку данных из больших таблиц. Если у вас запрос SELECT тормозит, попробуйте эти методы:

1️⃣ Индексы
Без индексов даже самый мощный сервер не спасёт. Используйте B-Tree для точных совпадений (=) и диапазонов (BETWEEN). Для полнотекстового поиска — GIN или Full-Text Index.

2️⃣ EXPLAIN ANALYZE
Перед оптимизацией всегда проверяйте план запроса:

EXPLAIN ANALYZE SELECT * FROM orders WHERE status = 'pending';

Ищите Seq Scan (последовательное сканирование) – оно медленное. Заменяйте его на Index Scan или Bitmap Index Scan.

3️⃣ Ограничение выборки
Не грузите тысячи строк, если нужно 10 записей:

SELECT * FROM logs ORDER BY created_at DESC LIMIT 10;

Такой запрос работает быстрее, чем выборка всего.

4️⃣ Партиционирование
Разделяйте большие таблицы по дате, ID или другому критерию. Например, если у вас логи за 5 лет, можно хранить их по месяцам.

5️⃣ Материализованные представления
Если отчёты строятся медленно, попробуйте кэшировать результат:

CREATE MATERIALIZED VIEW fast_report AS
SELECT status, COUNT(*) FROM orders GROUP BY status;

Обновлять можно по расписанию:

REFRESH MATERIALIZED VIEW fast_report;


#db

👉 @database_info
  • 👍 11
More from @database_info
  1. Sep 28, 2026SQL Important Queries Сохрани на потом, тебе пригодится👌 📲 Мы в MAX #db 👉 @database_inf…
  2. Sep 24, 2026Сегодня я хочу рассказать вам про одну часто недооцененную фишку в PostgreSQL - partial in…
  3. Sep 23, 2026🚀 Сегодня я покажу вам один из моих любимых хаков для PostgreSQL – генерация серий дат бе…
  4. Sep 22, 2026⚡️ Совет по работе с базами данных 💡 Уникальные индексы с исключением определенных строк…
  5. Sep 21, 2026Как быстро найти “тяжёлые” запросы в PostgreSQL Сегодня покажу простой способ найти самые…
  6. Sep 20, 2026🚀 Сегодня покажу, как быстро диагностировать «тормоза» в PostgreSQL - без всяких внешних…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →