2014-02-10 4 views
1

Я делаю соединение между тремя таблицами, и хотя эти объединения работают без объединения, когда я добавляю их вместе, он говорит мне «Неправильный синтаксис рядом с« Лицом ».Неправильный синтаксис рядом с «Лицом»

Это мой запрос:

SELECT [AddressLine1], [FirstName], [LastName] 
FROM 
[Person].[BusinessEntityAddress] join [Person].[Address] 
on ([Person].[BusinessEntityAddress].[AddressID]=[Person].[Address].[AddressID]) 
[Person].[Person] 
join [Person].[BusinessEntityAddress] 
on ([Person].[Person].[BusinessEntityID]=[Person].[BusinessEntityAddress].[BusinessEntityID]) 
WHERE FirstName= 'Terri' AND LastName= 'Duffy' 

Вопрос находится на последней строке [Person].[Person] join [Person].[BusinessEntityAddress]...

Любая помощь будет высоко оценен. И я могу ответить на вопросы, чтобы сделать их более конкретными.

+3

Я сомневаюсь, что это них чрезвычайно является 'MySQL', вы помечать это неправильно? – Wrikken

+0

Я думаю, что это должно быть указано в sql server hint: adventureworks – DaImTo

+0

Во всяком случае, редактирование М. Али совершенно ясно, что там есть «человек». [Person] ', вы имели в виду' JOIN [Person]. [Person] ON ... что-то ... '? – Wrikken

ответ

1
SELECT [Person].[Address].[AddressLine1] 
     , [Person].[Person].[FirstName] 
     , [Person].[Person].[LastName] 
FROM [Person].[BusinessEntityAddress] join [Person].[Address] 
on [Person].[BusinessEntityAddress].[AddressID]=[Person].[Address].[AddressID] 
JOIN [Person].[Person] 
ON [Person].[Person].[BusinessEntityID] = [Person].[BusinessEntityAddress].[BusinessEntityID] 
WHERE FirstName= 'Terri' AND LastName= 'Duffy' 

-OR, используя псевдоним делает это намного чище и легче читать

SELECT PA.[AddressLine1] 
     , PP.[FirstName] 
     , PP.[LastName] 
FROM [Person].[BusinessEntityAddress] PB 
INNER JOIN 
     [Person].[Address] PA 
ON PB.[AddressID] = PA.[AddressID] 
INNER JOIN 
     [Person].[Person] PP 
ON PP.[BusinessEntityID] = PB.[BusinessEntityID] 
WHERE PP.[FirstName] = 'Terri' 
AND PP.[FirstName] = 'Duffy' 
+0

Спасибо, М.Али, это сработало !! Большое спасибо за вашу быструю помощь! – ACEQL

+0

Спасибо за подробный ответ! Я узнал свою ключевую ошибку в JOINS. – ACEQL

+0

Вы рад помочь :) –

Смежные вопросы