2015-05-03 2 views
-4

У меня есть следующий запрос. Я хочу, чтобы левое соединение, как Oracle. Я имею в виду внутреннее соединение с левым соединением, как показано ниже. Есть ли способ, чтобы написать короткую стрижку левое соединение в MS SQL Server, как Oracle ниже приведен пример запросаСлева присоединиться к SQL Server, например, oracle left join (+)

SELECT tbla.Name FROM 
    tbla,tblb,tblc,tbld 
    WHERE 
    tbla.ID = tblb.ID 
    and tbla.ID = tblc.ID(+)--left join like oracle 
    and tbla.ID = tbld.ID 
+9

** Не используйте это !! ** Этот синтаксис устарел давно - используйте ** соответствующий ANSI/ISO JOIN ** синтаксис, используя 'LEFT OUTER JOIN' или' INNER JOIN'! –

+9

И подчеркнуть это. , , Оба SQL Server и Oracle поддерживают правильный синтаксис LEFT JOIN. Простое правило: никогда не используйте запятые в предложении 'from'. –

ответ

6

Вы можете использовать явное объединений:

SELECT tbla.name 
FROM  tbla 
JOIN  tblb ON tbla.id = tblb.id 
LEFT JOIN tblc ON tbla.id = tblc.id 
JOIN  tbld ON tbla.id = tbld.id 
Смежные вопросы