2017-10-28 2 views
0
SELECT 
    * 
FROM 
    [SQL].[dbo].[Debtors] d 
JOIN 
    [SQL].[dbo].[DebtorIndex] di 
JOIN 
    [SQL].[dbo].[DebtorAddresses] da ON d.IDNumber = di.IDNumber 
            AND d.AutoNumber = da.DebtorID 
            AND da.DebtorID = '199' 

Ich erhalte diesen FehlerSQL JOIN Syntaxfehler mit mehreren Joins

Msg 102, Ebene 15, Status 1, Zeile 3
falsche Syntax in der Nähe 'da'.

Zuerst ist aber nichts da. Soll da noch etwas anderes sein?

SecondhandWir [SQL].[dbo].[Debtors] d, ich weiß für eine Tatsache, und haben dreifach überprüft, dass d.IDNumber & d.AutoNumber existieren, aber ich bekomme die folgende Fehlermeldung für beide

„Der mehrteilige Bezeichner‚d.IDNumber‘konnte nicht sein gebunden."

und erhalten Sie das gleiche für d.AutoNumber.

Bitte helfen. Vielen Dank im Voraus

+1

Was ist der Unterschied zwischen 'AutoNumber' ist und' IDNumber'? Es klingt, als wären sie beide IDENTITY- oder Primärschlüsselattribute, in diesem Fall ist man überflüssig. Vermeiden Sie auch den Begriff "Autonumber", da er nicht für SQL Server gilt. – Dai

+0

Das ist ein Feld, das in meinen Daten ist und verwendet wird, da es eindeutig ist – Paul

Antwort

3

es so versuchen:

SELECT * 
FROM [SQL].[dbo].[Debtors] d 
INNER JOIN [SQL].[dbo].[DebtorIndex] di ON d.IDNumber = di.IDNumber 
INNER JOIN [SQL].[dbo].[DebtorAddresses] da ON d.AutoNumber = da.DebtorID 
WHERE da.DebtorID = '199' 
+0

Ich tat das, aber nichts zeigt sich. Wenn Sie '199' eingeben, sollte etwas angezeigt werden, wenn ich die Suchen manuell mache, aber bekomme keine Ergebnisse, wenn ich es mit dieser SQL-Anweisung mache – Paul

+0

Ich müsste mir die Daten ansehen, um zu beantworten, warum – kbball

1

Sie keine Bedingung auf di beitreten.

... di auf d.something = di.anotherthing