SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.09.2013 14:55:03

hitenok
Участник
Зарегистрирован: 19.09.2013
Сообщений: 2

Можно ли оптимизировать запрос

Народ, добрый, подскажите.
Можно ли оптимизировать запрос так, чтобы сократить время выполнения.

select code, sum(q) as delta
from (
select code, sum(count) as q from test group by code
UNION ALL
select code,-sum(count) as q from demo group by code
) u
group by code

Зачем?
В базе таблицы по 1`000`000 каждая
Общее время работы более 2-х секунд.

Неактивен

 

#2 19.09.2013 15:10:20

hitenok
Участник
Зарегистрирован: 19.09.2013
Сообщений: 2

Re: Можно ли оптимизировать запрос

План такой
id    select_type    table    type    possible_keys    key    key_len    ref    rows    Extra
1    PRIMARY    <derived2>    ALL    NULL    NULL    NULL    NULL    202    Using temporary; Using filesort
2    DERIVED    test    index    NULL    code    4    NULL    252140    
3    UNION    demo    index    NULL    code    4    NULL    208868    
NULL    UNION RESULT    <union2,3>    ALL    NULL    NULL    NULL    NULL    NULL

Неактивен

 

#3 19.09.2013 20:27:13

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: Можно ли оптимизировать запрос

Покажите
show create table test;
и
show create table demo;

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson