Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.07.2011, 02:25   #1
KBO
Форумчанин
 
Регистрация: 11.06.2010
Сообщений: 525
По умолчанию Объединение двух запросов

У меня возник вопрос с объединением выборки всей таблицы "TABLE1" (все поля) и результатом выборки из таблицы "TABLE2" (2 поля).
Есть запрос 1 (выдает 3 строки результата):
Код:
select d.* from TABLE1 d where d.ORGANIZATION_ID = 55
и запрос 2 (выдает 3 строки результата):
Код:
select P.w_ID, (case when sum(P.ACCRUED_INTEREST_ARM) <> 0 then sum(P.ACCRUED_INTEREST_ARM) else 0 end)
                               from TABLE2 P 
                                  where P.w_ID in (383, 393, 449)  
                                  group by P.w_ID
так вот я пытаюсь объединить запрос 1 с запросом 2, по критерию "D.ID=P.w_ID", таким образом (вариант 1):

Код:
select D.* from TABLE1 D where D.ORGANIZATION_ID = 55
left join
(select P.DEPOSIT_ID, (case when sum(P.ACCRUED_INTEREST_ARM) <> 0 then sum(P.ACCRUED_INTEREST_ARM) else 0 end)
                               from TABLE2 P where P.w_ID in (383, 393, 449))
                               on D.ID=P.w_ID
                               group by P.w_ID
или (вариант 2)

Код:
select D.*, (select (case when sum(P.ACCRUED_INTEREST_ARM) <> 0 then sum(P.ACCRUED_INTEREST_ARM) else 0 end)
                               from TABLE2 P where P.w_ID in (383, 393, 449) group by P.w_ID) as  ACCRUED_INTEREST_ARM
                               from TABLE1 D where D.ORGANIZATION_ID = 55 and D.ID in (383, 393, 449)
                                order by D.ID
но почему-то не совсем получается.
В чем я ошибаюсь? Я так думаю в синтаксисе запроса (по отдельности запросы работают), (если в результатах запросов №1 и №2 по одной строке, то все замечательно получается, но если результат состоит из нескольких строк, то проблема).
KBO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
объединение SCQ запросов mad_dog4 БД в Delphi 4 06.12.2010 14:13
Связка двух запросов shefus SQL, базы данных 1 11.11.2010 19:56
Объединение 2-х запросов SlavaSH БД в Delphi 6 28.12.2009 10:08
помогите с совмещением двух запросов. SQL Server S_Yevgeniy БД в Delphi 8 21.12.2009 21:13