выбрать много времени в объединении все упорядочение по дате desc? - PullRequest
0 голосов
/ 12 мая 2018

У меня есть выбор, чтобы получать оповещения.

select 'comments' prefix, c.foto, c.data as data, c.user, concat(k.user, ' comments your post') as logs from comentarios c 
inner join posts p on c.foto = p.id 
inner join cadastro k on c.user = k.id 
where p.user = 1 and p.user <> c.user and c.delete = 0

union all

select 'like' prefix, l.post, l.data as data, l.user, concat(k.user, ' liked your post') as logs from likes l 
inner join posts p on l.post = p.id 
inner join cadastro k on l.user = k.id 
where p.user = 1 and l.user <> p.user

order by data desc
limit 5

Проблема в том, что если я запускаю команду select таким образом, это займет 2,4871 секунды.

Если я удаляю select 'like'... = 0,0024, но если я запускаю этот выбор отдельно, он займет всего 0,010 без заказа по данным.

есть идеи, почему? Я не знаю, является ли проблема союзом или порядком ... они все хорошо проиндексированы.

enter image description here

...