TGViewer
Библиотека баз данных Библиотека баз данных @sql_lib · 10.2K subscribers
Post #379 1.69K
📌 EXISTS РАБОТАЕТ БЫСТРЕЕ COUNT

SQL-совет: перестаньте считать всё через COUNT(*)

Многие пишут так:

SELECT COUNT(*)
FROM orders
WHERE user_id = 123;

Чтобы проверить — есть ли записи.

Проблема:
COUNT(*) считает все строки, даже если нужна просто проверка существования.
На больших таблицах это лишняя нагрузка и медленный запрос.

Правильнее использовать EXISTS.

Почему это лучше:
- База останавливается на первой найденной строке
- Меньше чтения данных
- Быстрее на больших таблицах
- Использует индексы эффективнее

Пример:


-- Плохо
SELECT COUNT(*)
FROM orders
WHERE user_id = 123;

-- Хорошо
SELECT EXISTS (
SELECT 1
FROM orders
WHERE user_id = 123
);

-- Или в условии
SELECT *
FROM users u
WHERE EXISTS (
SELECT 1
FROM orders o
WHERE o.user_id = u.id
);
  • ❤ 8
  • 👍 4
More from @sql_lib
  1. Sep 17, 2026🔥 Mozilla выпустила 91-страничный отчёт о состоянии open-weight AI — и главный вывод: отк…
  2. Sep 8, 2026🐳 Почему localhost не работает в Docker Приложение подключалось к PostgreSQL на компьютер…
  3. Aug 16, 2026Полный инженерный курс по AI-агентам на русском: от tool calling до production Курс инжене…
  4. Jul 25, 2026Бесплатный учебник по геометрии на целый университетский курс 📐 Euclidean Plane and its R…
  5. Jul 23, 2026SQL-совет: сравнивайте `NULL` через `IS NOT DISTINCT FROM` Обычное сравнение ломается на N…
  6. Jul 23, 2026Команда GigaChat зовёт на вечеринку для AI-разработчиков и исследователей 🎉 29 июля, Сбер…
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 →