2016-03-20 6 views
0

Ich versuche, eine Ansicht mit einem INNER JOIN zu erstellen:Nicht aufgelöstes SQL-Objekt in ein Objekt. Entweder das Objekt nicht existiert oder der Verweis ist mehrdeutig

CREATE VIEW [dbo].[MatchingTeamNames] 
AS SELECT [XMLSoccer-Team].[ID] AS SoccerID, [XMLSoccer-Team].[Name] AS SoccerName, 
      [Smarkets-Team].[ID] AS SmarketsID, [Smarkets-Team].[Name] 
FROM [XMLSoccer-Team], [MatchingTeamIDs], [Smarkets-Team] 
INNER JOIN [MatchingTeamIDs] ON [MatchingTeamIDs].[XMLSoccerID] = [XMLSoccer-Team].[ID] 

ich einen Fehler für den letzten Teil der inneren Aufnahme JOIN: [XMLSoccer-Team].[ID]

Nicht aufgelöstes SQL-Objekt in ein Objekt. Entweder ist das Objekt nicht vorhanden oder die Referenz ist mehrdeutig.

Irgendwelche Ideen, wo ich falsch liege?

Danke.

Antwort

1

Was ist das? implizite und explizite Join-Syntax zusammen? NICHT dies jemals tun!

Diese Abfrage mit der expliziten Join-Syntax:

CREATE VIEW [dbo].[MatchingTeamNames] 
AS SELECT [XMLSoccer-Team].[ID] AS SoccerID, [XMLSoccer-Team].[Name] AS SoccerName, 
      [Smarkets-Team].[ID] AS SmarketsID, [Smarkets-Team].[Name] 
FROM [XMLSoccer-Team] 
INNER JOIN [MatchingTeamIDs] 
ON [MatchingTeamIDs].[XMLSoccerID] = [XMLSoccer-Team].[ID] 
INNER JOIN [Smarkets-Team] 
ON (The Relations between this tables Smarkets-Team and the table its connected to) 
+0

Die Erklärung 'FROM a, b 'entspricht' aus einer Kreuzung b' JOIN, nicht 'a INNER JOIN b' –

+0

Das funktionierte, danke Dich sehr. Auch hier bin ich mir nicht sicher, warum Sie dafür eine Stimme bekommen haben. Vielleicht eine Erklärung zwischen impliziten und expliziten Join? Ich bin mir immer noch nicht sicher, warum ich die anderen Tabellen nicht in meinen FROM-Fall einschließen würde. –

+0

@SQLGeorge Ja, aber das ist nicht der Fall, und Sie hätten das sehen können, wenn Sie auf die Tabellennamen geachtet hätten! – sagi