Как сделать полное внешнее объединение в sqlserver 2005? - PullRequest
2 голосов
/ 04 июня 2009

Как сделать полное внешнее объединение в sqlserver 2005?

Похоже, в sqlserver 2008 есть полное внешнее соединение, но мне нужно сделать это в sqlserver 2005.

Другими словами, я объединяю два представления на основе столбца ACCTNUM в обоих представлениях (представления показывают агрегаты, поэтому в каждом представлении для каждой учетной записи имеется не более одной записи ACCTNUM), и я хотел бы, чтобы каждая запись в каждой таблице показывать, даже когда нет совпадений в другом (т. е. полное внешнее соединение).

Ответы [ 5 ]

4 голосов
/ 04 июня 2009

Это будет работать в SQL 2005

Select
    tableA.Column,
    tableA.AnotherColumn,
    tableB.Column
From
    tableA
Full Outer Join
    tableB On tableA.Id = tableB.Id

Обратите внимание, вы можете использовать Full Join или Full Outer Join, это не имеет значения.

2 голосов
/ 04 июня 2009

SQL Server 2005 поддерживает полные объединения:

На самом деле, я думаю, что FULL JOIN работает на минимум еще до SQL Server 7.

1 голос
/ 04 июня 2009
SELECT A.*, B.* FROM TABLE1 A FULL JOIN TABLE2 B ON A.Id = B.TableAID
1 голос
/ 04 июня 2009

Обратите внимание, что если вы используете Access для подключения к БД, вы не можете использовать полное внешнее объединение, поскольку Access не поддерживает его.

1 голос
/ 04 июня 2009

Полные внешние объединения должны поддерживаться SQL Server 2005 - что заставляет вас думать, что это не так?

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