Left-outer-join (Verknüpfung zwischen den drei Tabellen)?

Habe ich eine Haupttabelle, die ich muss Daten aus. Ich habe einen left outer join, wo sich die Felder entsprechen 40% der Zeit. Und dann habe ich noch eine Verknüpfung, in dem ich entsprechend die Daten aus Tabelle A mit.

Dies ist die SQL, die in pseudo-code. Diese Abfrage wird nicht funktionieren.

-- Dies ist der Teil, den ich tun will, aber nicht funktioniert.
UND H. COL3 = A. ZUSTAND????

Arbeite ich mit IBM DB2.

SELECT DISTINCT
  APP_NO as app_no,
  A.STATE as state
  ...
  ... Fields
  ...
FROM 
  TABLE_A A
LEFT OUTER JOIN  
  TABLE_B HIST
ON
  HIST.COL1 = A.COL1
, TABLE_C B  
LEFT OUTER JOIN
  TABLE_D H  
ON
  H.COL2 = B.COL2
-- This is the part I want to do but doesn't work.
AND
  H.COL3 = A.STATE????
WHERE
  A.BRANCH = 'Data'
  • warum doesnt es funktioniert? Welche Fehler sind Sie immer?
  • In DB2, bekomme ich die folgende Fehlermeldung. Wenn ich entfernen Sie die problematische Zeile, dann funktioniert es. Fehler: SQL0338N Einer ON-Klausel im Zusammenhang mit einem JOIN-operator oder einer MERGE-Anweisung ist nicht gültig. SQLSTATE=42972 (Stand:42972, Native-Code: FFFFFEAE)
  • Bitte gehen Sie über diesen link. techpint.com/programming/how-sql-joins-works. Ich habe gezeigt, das Beispiel mit dem Skript enthalten. Er enthält genau den gleichen Fall, dass Sie Fragen.
InformationsquelleAutor Berlin Brown | 2008-11-16
Schreibe einen Kommentar