Как я могу построить свой SQL-запрос из этих таблиц? - PullRequest
0 голосов
/ 13 января 2011

Я думаю о создании запроса из этих 2 таблиц (на SQL Server 2008).У меня есть 2 таблицы, как показано ниже:

Таблица 1

 MemberId  . MemberName .  Percentage .  Amount1
 00000001    AAA                 1.0     100
 00000002    BBB                 1.2     800
 00000003    ZZZ                 1.0     700

Таблица 2

 MemberId  . MemberName .  Percentage .  Amount2
 00000002    BBB                 1.5     500
 00000002    BBB                 1.6     100
 00000002    BBB                 1.6     150

Я хочу получить результат

 MemberId  . MemberName .  Percentage .  Amount . NettAmount
 00000001    AAA                 1.0      100     100
 00000002    BBB                 1.2      800      50 <-- 800-(500+100+150)
 00000002    BBB                 1.5      500     500
 00000002    BBB                 1.6      250     250
 00000003    ZZZ                 1.0      700     700

50 прибывает из 800 в Таблице1 минус сумма Суммы2 в таблице2 для MemberID = 00000002

Пожалуйста, помогите мне построить запрос для достижения этого результата.

Заранее спасибо.

1 Ответ

2 голосов
/ 13 января 2011

Что вам нужно сделать, это что-то вроде этого:

  1. Выберите из таблицы1
  2. Выберите GROUP BY из таблицы 2
  3. Присоединиться к результатам этих двух запросов по MemberId

Код SQL:

SELECT ... FROM Table1
INNER JOIN (SELECT MemberId, SUM(Amount2) FROM Table2 GROUP BY MemberId) Agg
ON Table1.MemberId = Agg.MemberId

Тогда вы сможете выбрать «Сумма1 - Сумма2» из объединения.

НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...