SQL Получение оптимизации подсчета строк [дубликат

StackOverflow https://stackoverflow.com/questions/8852753

  •  28-10-2019
  •  | 
  •  

Вопрос

Возможный дубликат:
В SQL, в чем разница между счетом (столбцом) и подсчетом ()?
Считать(
) VS COUN (1)

У меня есть большие таблицы, которые хранят длинные тексты, например, содержимое электронной почты или новости. И мой вопрос в том, что есть какая -то разница для производительности для подсчета строк таблиц:

SELECT COUNT(*) FROM table_name

SELECT COUNT(t.id) FROM table_name as t

Какой из них лучше? Или последний будет оптимизирован с помощью оптимизатора запросов? Есть ли документация по этому поводу?

Это было полезно?

Решение

Они разные.

COUNT(*) получу все значения (даже NULL значения подсчет).COUNT(t.id) не считает NULL ценности.


С точки зрения производительности, они одинаковы (оптимизатор запроса умный).

Другие советы

План запросов выглядит так же, но при тестировании, используя *, быстрее (немного).

Ноль не учитывается при указании имени столбца.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top