@viktorross

Долгий запрос mysql, что не так?

здравствуйте, подскажите что может быть не так, очень долго выполняется запрос , соответственно страница открывается почти 20 секунд

вот запрос из лога mysql он постоянно дублируется

# Time: 190819 16:02:08
# User@Host: t_one[t_one] @ localhost []  Id: 25065
# Schema: t_db  Last_errno: 0  Killed: 0
# Query_time: 6.323997  Lock_time: 0.000257  Rows_sent: 12  Rows_examined: 264767  Rows_affected: 0
# Bytes_sent: 29507
SET timestamp=1566219728;
select distinct class_ads.*, class_ads.id as adid, date_format(class_ads.`date_added`,'%d.%m в %H:%i') as date_nice, date_format(class_ads.`date_expires`,'%d.%m в %H:%i') as date_expires_nice, UNIX_TIMESTAMP(class_ads.`date_added`) as `time_added`, (class_ads.date_expires < '2019-08-19 16:02:01' and class_ads.date_expires!='0000-00-00 00:00:00' and class_ads.active=0) as expired
		, class_slugs.slug 
		 
		from class_ads 
		   
		inner join class_slugs on class_ads.id=class_slugs.object_id
		  where class_ads.active=1  and class_slugs.`type`='listing'  order by  `priority` desc,  date_added  desc  limit 0, 12;


индексы все есть насколько я вижу
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 1
@nozzy
Symfony, Laravel, SQL
Попробуй сразу фильтровать, а не потом:
select t1.*, t2.*
from (select * from class_ads where class_ads.active=1) as t1
inner join (select * from class_slugs where class_slugs.`type`='listing') as t2 on t1.id = t2.object_id
Ответ написан
Ваш ответ на вопрос

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

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