Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как правильно подсчитать количество строк в таблице MySQL

52K
16 июля 2010 года
lexandr
26 / / 16.07.2010
Так как все таки правильно? Чтобы не вызывало большую нагрузку и выполнялось быстро и точно.

так:

 
Код:
$numrows = mysql_num_rows(mysql_query("SELECT * FROM my_table"))


или так:

 
Код:
$sql=mysql_fetch_array(mysql_query("select count(1) from my_table;"));
$rows=$sql[0];


Облазил весь интернет кто то говорит что первый вариант лучше кто то что второй. Решил зайти сюда спросить. Подскажите.
З.Ы. В таблице очень много строк
366
16 июля 2010 года
int
668 / / 30.03.2005
Моё мнение ни на чём не основано, но я считаю, что второй вариант лучше. Вроде даже писали, что count(*) лучше писать.
339
16 июля 2010 года
verybadbug
619 / / 12.09.2005
однозначно второй....

при первом варианте mysql-сервер будет передавать ВСЕ строки из таблицы скрипту
52K
16 июля 2010 года
lexandr
26 / / 16.07.2010
Спасибо за ответы :) Буду юзать второй вариант:)
253
16 июля 2010 года
Proger_XP
1.5K / / 07.08.2004
Цитата: int
Вроде даже писали, что count(*) лучше писать.


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

Первый вариант намного медленнее, ибо действительно БД будет передавать все имеющиеся записи к backend'у (типа пхп), а тот уже будет их считать.

366
19 июля 2010 года
int
668 / / 30.03.2005
У меня как-то был сайтик, и он обращался к базе данных через медленную сеть. Вот тогда я и узнал, что mysql_num_rows лучше не использовать :)
256
19 июля 2010 года
foxweb
1.0K / / 27.07.2005
Второй лучше.
mysql_num_rows($result) следует использовать не для подсчёта "всего строк в таблице", а сколько строк в конкретной выборке$result.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог