Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помогите ускорить запрос
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Очень, мягко выражаясь, странный запрос.
Дофига указаний оптимизатору для простого запроса почти наверняка будут мешать, а не помогать.
left join, но затем фильтруете по приджойненой таблицы без учёта null'ов - только мешаете и без того глупому оптимизатору работать.
С какого перепугу эти, хоть и небольшие таблицы, в 2015 году на myisam я вообще не пойму.
Про subscribe в cp1251 помолчу.
В общем, что от запроса вообще нужно?
выбрать 20 записей по дате из jb_board с учётом выбранных категорий и только те, у которых есть строки в jb_photo?
Возможно, имеет смысл вынести в jb_board булево поле, существуют ли для этой записи строки в jb_photo.
----- PostgreSQL DBA
miha25
Отправлено: 20 Ноября, 2015 - 17:18:25
Новичок
Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2015
Помог: 0 раз(а)
Мелкий пишет:
Очень, мягко выражаясь, странный запрос.
Дофига указаний оптимизатору для простого запроса почти наверняка будут мешать, а не помогать.
left join, но затем фильтруете по приджойненой таблицы без учёта null'ов - только мешаете и без того глупому оптимизатору работать.
С какого перепугу эти, хоть и небольшие таблицы, в 2015 году на myisam я вообще не пойму.
Про subscribe в cp1251 помолчу.
В общем, что от запроса вообще нужно?
выбрать 20 записей по дате из jb_board с учётом выбранных категорий и только те, у которых есть строки в jb_photo?
Возможно, имеет смысл вынести в jb_board булево поле, существуют ли для этой записи строки в jb_photo.
Здравствуйте, да нужно выбрать 20 записей по дате из jb_board с учётом выбранных категорий и только те, у которых есть строки в jb_photo, что касается вынести в jb_board булево поле, я к сожалению чайник в этом деле, поэтому не пойму о чем Вы
Спасибо Вам большое за помощь, поставил Ваш запрос, отрабатывает за 0.0044, супер.
Подскажите, а что Вы имели ввиду когда писали
С какого перепугу эти, хоть и небольшие таблицы, в 2015 году на myisam я вообще не пойму.
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Я к тому, что уже 2015 год кончается. Причин использовать всякое myisam вместо нормального innodb нет уже почти 4 года, даже если требуется fulltext. А без полнотекстовых индексов - все 10 лет.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.