Это продолжение моих предыдущих . У меня есть таблица вроде этого:SQL Partial Full Outer Join
Name Id Amount
Name1 1 99
Name1 1 30
Name1 9 120.2
Name2 21 348
Name2 21 21
Name3 41 99
Если я запускаю этот запрос, благодаря Juan Carlos Оропеза:
SELECT
[Name],
[Id],
count([Amount]) as 'Count'
FROM
table1
GROUP BY [Name], [Id]
я получаю эту таблицу:
Name Id Count
Name1 1 2
Name1 9 1
Name2 21 2
Name3 41 1
Теперь у меня есть еще один стол например:
Id Return Amount
1 100
1 134.3
9 912.3
9 21
21 23.23
41 45
Если Я бегу этот вопрос:
SELECT
[Id],
count([Return Amount]) as 'Returns'
FROM
table2
GROUP BY [Id]
Я получаю эту таблицу:
Id Returns
1 2
9 2
21 1
41 1
Мне нужно объединить эти две таблицы, чтобы создать таблицу, как это:
Name Id Count Returns
Name1 1 2 2
Name1 9 1 2
Name2 21 2 1
Name3 41 1 1
Вот мой полное внешнее соединение выписка:
SELECT
[Name],
[Id],
count([Amount]) as 'Count'
FROM table1 AS A
FULL OUTER JOIN (
SELECT
[Id],
count([Count]) as 'Returns'
FROM
table2
GROUP BY [Id]
) B ON A.[Id] = B.[Id]
GROUP BY [Name], [Id]
Но это дает мне следующую таблицу:
Name Id Count
Name1 1 2
Name1 9 1
Name2 21 2
Name3 41 1
Как я получаю Returns
колонки прикрепить? Я не уверен, что присоединиться к использованию в этом случае, но мой лучший образованный ответ будет полным внешним соединением. Есть идеи?
В вашем запросе, если вы добавили в список B.Returns какие результаты? – Kostis