MySQL - можно ускорить подсчет MySQL? - PullRequest
1 голос
/ 28 ноября 2011

У меня есть простой запрос вроде:

select count(*) from table

Можно ли ускорить MySQL, выполнив:

select count(id) from table

Имеет ли это какое-то значение с точки зрения скорости?

С наилучшими пожеланиями,

Ответы [ 4 ]

1 голос
/ 28 ноября 2011

Вы можете попытаться получить счет из information_schema

select TABLE_ROWS from information_schema.tables
where TABLE_SCHEMA = '$db' and TABLE_NAME = '$tbl'; 
1 голос
/ 28 ноября 2011

Нет, если id - ваш первичный ключ.* просто отобразится на ваш первичный ключ.count(id) = count(*)

0 голосов
/ 29 ноября 2011

Если идентификатор "не нуль", нет, это не будет иметь никакого значения.

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

0 голосов
/ 28 ноября 2011

Если id является вашим первичным ключом, то нет, он не будет, так как MySql все равно будет использовать первичный ключ под крышками.Если id не является первичным ключом, это может фактически сделать запрос немного медленнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...