powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Какую можно использовать альтернативу select из select'a
5 сообщений из 5, страница 1 из 1
Какую можно использовать альтернативу select из select'a
    #36859278
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!

Посоветуйте, плз, как можно оптимизировать запрос основанный на
селект из селекта.

У меня есть Таблицы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
________
Table A
NM
 1 
 2 
 3 
________
Table B
NM  VAL  FLAG
 1     1      1 
 1     2      1 
 1     4      1 
 2     1      1 
 2     3      1 
 3     3      1 
 1     4      0 
 2     5      0 

Мне нужно получить вывод вида:
Код: plaintext
1.
2.
3.
4.
NM  VAL1  VAL0
 1     7       4 
 2     4       5 
 3     3       0 

Я сделал запрос:
Код: plaintext
1.
2.
3.
4.
5.
select
A.NM
, (select sum(VAL) from B where B.FLAG= 1  and B.NM=A.NM) as VAL1
, (select sum(VAL) from B where B.FLAG= 0  and B.NM=A.NM) as VAL0
from A

когда записей в таблице B было немного этот запрос работ нормально,
сейчас там записей порядка 100тыс.
и время выполнения стало расти.
Правда индексов никаких на таблице не объявлено.

Посоветуйте плз, что мне можно сделать.

Заранее благодарен.
...
Рейтинг: 0 / 0
Какую можно использовать альтернативу select из select'a
    #36859455
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select
   nm,
   sum(case when flag= 1  then val else  0  end) val1,
   sum(case when flag= 0  then val else  0  end) val0
from
   A
group by nm
...
Рейтинг: 0 / 0
Какую можно использовать альтернативу select из select'a
    #36859517
Vladimir Kiselev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
indicatrix,

Кроме ответа gardeman , есть смысл посмотреть хорошую книгу кукбук , в которой есть пример решения Вашей задачи. Выбирайте там для своей версии DB2 и смотрите.
...
Рейтинг: 0 / 0
Какую можно использовать альтернативу select из select'a
    #36859523
Vladimir Kiselev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
indicatrix,

да, еще утилиту db2advis посмотрите, для оптимизации запроса и построения индексов.
...
Рейтинг: 0 / 0
Какую можно использовать альтернативу select из select'a
    #36859600
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
огромное спасибо господа!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Какую можно использовать альтернативу select из select'a
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]