MySQL и ORDER BY. Уменьшаем время выполнения запроса

Итак, что мы имеем.

  • 3 связанные таблицы, в них хранится порядка 2млн записей.
  • Запрос, где эти таблицы через LEFT JOIN собираются воедино.
  • Условие, что все должно быть отсортировано по имени.
  • Все должно работать быстро.

В общем то, вполне тривиальное задание, если бы не последнее условие

Рассмотрим на более простом примере. Таблица `catalog_software` с 25 тысячами записей. Без всяких связаных таблиц

SELECT * FROM `catalog_software` LIMIT 1000;

Запускаем запрос через phpMyAdmin - видим, что выполнение запроса заняло 0.09 секунд.
Задумываемся - что-то забыли... Ах да, сортировка. Быстренько все исправляем. Читать полностью »

PHPConf 2008 29-30мая, Москва. Видео с конференции

Что нового в PHP-5.3 - Дмитрий Стогов Zend Technologies


- namespace-ы
- ООП расширения
- late static binding (static:
- __callstatic()
- динамический доступ к статическим данным ($classname::method(), $classname::$prop )
- nowdoc (< <<'EOF ')
- ?: operator
- сборщик мусора
- разные php.ini директивы для разных каталогов (аналог .htacces для FastCGI)
- интересные новые возможности расширений (ext/openssl, ext/phar, ext/intl) Читать полностью »