Вопрос о синтаксисе sql: * =

У меня есть более старый (сломанный) код, у которого есть соединение, используя * =

table1.ID *= table2.ID

Это левое внешнее соединение или правое внешнее соединение? (Мое сообщение об ошибке указывает, что это один из них)

Ответ 1

*= (LEFT OUTER JOIN)

=* (RIGHT OUTER JOIN)

Вместо этого используйте LEFT/RIGHT JOINS

Ответ 2

*= указывает левое внешнее соединение, а =* указывает правостороннее соединение.

EDIT:

У меня были смешаны мои соединения, были исправлены.

Ответ 3

пожалуйста замените это на современный синтаксис LEFT OUTER JOIN .. ON.

левое внешнее соединение *=
правое внешнее соединение =*

Ответ 4

table1.ID * = table2.ID, если table1 и table2 являются столбцами, а затем в sqlserver он даст ошибку в правильном синтаксисе, лучше использовать внутреннее соединение