"PHP" / Говнокод #6344 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
// Count rows in news table
$rows = $db -> query('SELECT * FROM news');
$count = count($rows)

Увидел в одном самопальном движке.

Запостил: Shitafaka Shitafaka, (Updated )

Комментарии (16) RSS

  • сделал все наоборот. вместо самого быстрого запроса, самый медленный.
    Ответить
  • причем звездочкой... не только все строки, но и все столбцы )))
    Ответить
  • круто.
    а я тут как дебил пытаюсь взять число записей из системных таблиц
    это потому что count(*) тоже не шибко быстрый
    вот же оно решение!
    Ответить
    • Всё-таки count(*) быстрее чем count(column).
      На InnoDB таблице с ~60000 записей - быстрее на ~0.02 секунды.
      На таблице MyISAM с ~90000 записей - быстрее на ~0.06 секунд.
      Так что дружно юзаем count(*) 🙂

      Для сравнения также потестил говнокодерский вариант из сабжа.
      Он медленнее в 17-18 раз.
      Ответить
        • А чем тогда разница объясняется?

          По каждому из тестов сделал по 50 прогонов. Скрипт запускал консольно. MySQL-caching предварительно убил. Коннектился по named-pipe (А значит задержки на установку соединения можно в расчёт не брать).
          Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8