А разве использовать mysql_num_rows так плохо ??? Если надо получить данные из БД и их количество, тогда прийдётся произвести два запроса к БД, разве это оптимально???
А разве использовать mysql_num_rows так плохо ??? Если надо получить данные из БД и их количество, тогда прийдётся произвести два запроса к БД, разве это оптимально???
Попробуй проверить разницу времени исполнения и поймешь.
И в первом 2 операции и бессмысленный выбор всех записей.
А во втором просто подсчитывается количество.
Короче count быстрее.
Покинул форум
Сообщений всего: 123
Дата рег-ции: Февр. 2011
Помог: 0 раз(а)
Мда мене короче больше всего подходит count !) Спс всем всё равно !
EuGen
Отправлено: 10 Марта, 2011 - 11:06:09
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Чем лучше? Если в таблице ~ 100 млн строк, строки эти содержат данные с длинными текстовыми полями, бинарными данными и таких полей 8-10, то думаю нетрудно оценить, каких затрат стоит такая выборка (имею ввиду SELECT * ...). Хотя справедливости ради, стоит отметить, что и SELECT COUNT(*) ... без дополнительных условий (и, конечно же, индексов по таким условиям) будет выполняться тоже не быстро.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
JustUserR
Отправлено: 10 Марта, 2011 - 15:03:44
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
EuGen пишет:
Хотя справедливости ради, стоит отметить, что и SELECT COUNT(*) ... без дополнительных условий (и, конечно же, индексов по таким условиям) будет выполняться тоже не быстро.
В действительности осуществление оценк быстродействия предполагаемых SQL-запросов включает ряд зависимых факторов, таких как уровень индексации целевых информационных полей и сохранение дополнительных параметров описания структуры таблицы; в частости при осуществлении предшествющей установки локального элемента триггера для записи и удаления информационных полей из таблицы, получение соответственного числа будет осуществляться за константное минимальное время
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.