Задать вопрос
opium
@opium
Просто люблю качественно работать

Как сделать индекс для запроса с group by и order by?

Сам запрос такой
SELECT Ad.id, Ad.title, Ad.description, Ad.posting_date, Ad.is_colored_listing, Ad.bg_color, Ad.fg_color, `Adi`.`image_name`, `Adc`.`category_alias`
FROM `daype_ads` AS `Ad`
LEFT JOIN daype_categories AS `Adc` ON ( `Ad`.`category_id` = `Adc`.`id` )
LEFT JOIN daype_images AS `Adi` ON ( `Ad`.`id` = `Adi`.`ad_id` )
WHERE `city_id` =25
AND `Ad`.`category` =4
AND `Ad`.`status` =1
AND `category_id` =33
GROUP BY `Ad`.`id`
ORDER BY `posting_date` DESC
LIMIT 20, 20

Выполняется секунды.
  • Вопрос задан
  • 3376 просмотров
Подписаться 2 Оценить 5 комментариев
Пригласить эксперта
Ответы на вопрос 2
Edro
@Edro
AND `Ad`.`category` = 4
 ...
 AND `category_id` = 33

Что это значит?
Ответ написан
@pihel
Sql, Oracle, pl/sql, BI, ETL, php, olap
А зачем группировка, если никаких агрегирующих функций нет?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы