Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Inner Join richtig verstehen und anwenden
zurück: Problem mit zusammengesetzer Formel bei Auswertung weiter: Zahlenfeld(Sinlge) zeigt trägt komische Werte ein Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
reeky
Access VBA Forgeschrittener


Verfasst am:
15. Dez 2011, 22:34
Rufname:

Inner Join richtig verstehen und anwenden - Inner Join richtig verstehen und anwenden

Nach oben
       Version: Office 2007

Hallo,

ich möchte eine Abfrage erstellen mit verknüpften Tabellen, jedoch sagt mit Access immer, dass ich die Falsche Syntax besitze. (Fehler: Fehlender Operator)

Ich besitze 3 Tabellen und habe in der mittleren (siehe Anhang) Tabelle 2 Fremdschlüssel, die ich mit je einen Primärschlüssel verknüpft habe.

Wenn ich die Abfrage mit dem Assistent erstelle, dann erscheint sie folgendermaßen:

Code:
SELECT tblArtikel.bez AS tblArtikel_bez, tblCat.bez AS tblCat_bez, tblMwst.bez AS tblMwst_bez, tblArtikel.netto, tblArtikel.ek
FROM tblMwst INNER JOIN (tblCat INNER JOIN tblArtikel ON tblCat.[ID] = tblArtikel.[cat]) ON tblMwst.[ID] = tblArtikel.[mwst];


Wenn ich aber die Variante nehme, die ich selbst geschrieben habe, dann kommt immer die Fehlermeldung mit dem Falschen Syntax:

Code:
SELECT tblArtikel.bez, tblCat.bez, tblMwst.bez, tblArtikel.netto, tblArtikel.ek
FROM tblArtikel
INNER JOIN tblCat ON tblArtikel.cat = tblCat.ID
INNER JOIN tblMwst ON tblArtikel.mwst = tblMwst.ID


Woran kann das liegen? Wo sind meine Fehler bei der Sache?

reeky



SQL SELECT INNER JOIN.gif
 Beschreibung:
 Dateigröße:  5.85 KB
 Angeschaut:  717 mal

SQL SELECT INNER JOIN.gif


viezy
Access-Programmierer


Verfasst am:
15. Dez 2011, 23:16
Rufname: Ralf
Wohnort: Merzig


AW: Inner Join richtig verstehen und anwenden - AW: Inner Join richtig verstehen und anwenden

Nach oben
       Version: Office 2007

Hallo,
die Klammern des geschachtelten JOIN fehlen...
Grüsse, Ralf

_________________
Access ist eigentlich wie Excel,
nur völlig anders...
reeky
Access VBA Forgeschrittener


Verfasst am:
16. Dez 2011, 00:00
Rufname:

AW: Inner Join richtig verstehen und anwenden - AW: Inner Join richtig verstehen und anwenden

Nach oben
       Version: Office 2007

Ich hab jetzt nochmal in nem buch nachgelesen, ich frag aber nochmal nach, ob ich das jetzt so richtig verstandne hab.

So sieht der Code aus dem Buch (Quelle: Microsoft Office Access 2007-Programmierung - Das Handbuch) aus:

Code:
SELECT
   Kunden.Firma, Artikel.Artikelname, Bestelldetails.BestellNr, Bestelldetails.Anzahl
FROM
   Kunden INNER JOIN
       (Bestellungen INNER JOIN
           (Artikel INNER JOIN Bestelldetails ON Artikel.ArtikelNr = Bestelldetails.ArtikelNr)
        ON Bestellungen.BestellNr = Bestelldetails.BestellNr)
   ON Kunden.KundenCode = Bestellungen.KundenCode
WHERE
   Kunden.Firma="Island Trading";


Und so sieht jetzt mein Eingerückter Code aus:
Code:
SELECT
   tblArtikel.bez AS tblArtikel_bez, tblCat.bez AS tblCat_bez, tblMwst.bez AS tblMwst_bez, tblArtikel.netto, tblArtikel.ek
FROM
   tblMwst INNER JOIN
       (tblCat INNER JOIN tblArtikel ON tblCat.[ID] = tblArtikel.[cat])
   ON tblMwst.[ID] = tblArtikel.[mwst];


Wenn ich das jetzt richtig verstanden hab ist das so, dass sich das 'Kunden INNER JOIN' auf den Code 'ON Kunden.KundenCode = Bestellungen.KundenCode ' bezieht.
Und dann das 'Bestellungen INNER JOIN' auf 'ON Bestellungen.BestellNr = Bestelldetails.BestellNr'.
Hab ich das so richtig verstanden? In dem Buch ist zwar erklärt wie das mit dem INNER JOIN gemeint ist, aber auf die Verschachtelung wird da nicht richtig eingegangen.
viezy
Access-Programmierer


Verfasst am:
16. Dez 2011, 00:29
Rufname: Ralf
Wohnort: Merzig

AW: Inner Join richtig verstehen und anwenden - AW: Inner Join richtig verstehen und anwenden

Nach oben
       Version: Office 2007

Hallo nochmal,
Zitat:
Wenn ich das jetzt richtig verstanden hab ist das so, dass sich das 'Kunden INNER JOIN' auf den Code 'ON Kunden.KundenCode = Bestellungen.KundenCode ' bezieht

...genau, die Klammern sind nötig damit Access erkennt auf welchen JOIN sich das Statement hinter ON bezieht.
Im 1. Codebeispiel deines Anfangsposts war das m.E. auch korrekt umgesetzt.
Grüsse, Ralf

_________________
Access ist eigentlich wie Excel,
nur völlig anders...
Bitsqueezer
Office-VBA-Programmierer


Verfasst am:
17. Dez 2011, 15:50
Rufname:


AW: Inner Join richtig verstehen und anwenden - AW: Inner Join richtig verstehen und anwenden

Nach oben
       Version: Office 2007

Hallo,

mach' Dir keine allzu tiefen Gedanken über die Klammerung von Access-SQL, das ist auch nur in Access so. In jedem Datenbankserver, den ich kenne, gibt es so eine komische Klammerung nicht, sie ist auch nicht notwendig. Man schreibt, mit welcher Tabelle man einen JOIN eingehen möchte und mit ON a.b = c.d ist auch klar, welche Tabelle mit welchem Feld. Nur bei Access SQL hat sich das noch nicht herumgesprochen. Eine Abfrage unter Access manuell zu kodieren, ist damit eine Herausforderung. Ich mache das in Access immer so, daß ich die JOINs immer mit dem Abfrageeditor erstelle und dann erledige, was ich manuell machen möchte, denn sobald man etwas komplexere Abfragen erstellt, ist der Abfrageeditor nicht mehr zu gebrauchen. Auch, daß Access ohne Ende überflüssige Klammern in so einen SQL-Befehl einfügt, macht den Abfrageeditor nicht gerade nützlicher.

Gruß

Christian
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Left join auf 2Spalten, ausgabe in einer Spalte 1 nowit 703 19. Feb 2008, 08:30
nowit Left join auf 2Spalten, ausgabe in einer Spalte
Keine neuen Beiträge Access Tabellen & Abfragen: 2x left outer join 4 Nju 1096 23. Okt 2007, 14:09
Nju 2x left outer join
Keine neuen Beiträge Access Tabellen & Abfragen: Access - Fehler bei Unterformular und SQL LEFT JOIN 1 kontextfrei 1526 01. Okt 2007, 18:03
kontextfrei Access - Fehler bei Unterformular und SQL LEFT JOIN
Keine neuen Beiträge Access Tabellen & Abfragen: Auswahlabfrage letzter Wert nicht richtig 2 Hilde71 582 01. Sep 2007, 04:36
Hilde71 Auswahlabfrage letzter Wert nicht richtig
Keine neuen Beiträge Access Tabellen & Abfragen: JOIN oder UNION oder was ganz anderes??? 1 Gast 398 19. Jul 2007, 23:48
Nouba JOIN oder UNION oder was ganz anderes???
Keine neuen Beiträge Access Tabellen & Abfragen: Update-Abfrage funktioniert nicht richtig 2 Kelley1995 507 05. Jul 2007, 16:00
Kelley1995 Update-Abfrage funktioniert nicht richtig
Keine neuen Beiträge Access Tabellen & Abfragen: INNER JOIN mit mehreren ON-Abschnitten 2 andreczogalla 683 13. Jun 2007, 13:20
andreczogalla INNER JOIN mit mehreren ON-Abschnitten
Keine neuen Beiträge Access Tabellen & Abfragen: Inner Join über 3 riesige Tabellen (ODBC) 3 elimin8tor 1006 08. Apr 2007, 00:11
Gast Inner Join über 3 riesige Tabellen (ODBC)
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage mit Kriterien richtig erstellen? 9 IV 2811 22. März 2007, 10:50
IV Abfrage mit Kriterien richtig erstellen?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage Left Join löscht aus falscher Tabelle 3 ggh 1798 01. Feb 2007, 14:49
Willi Wipp Abfrage Left Join löscht aus falscher Tabelle
Keine neuen Beiträge Access Tabellen & Abfragen: INNER JOINT dupliziert Datensätze 19 help_wanted 2219 13. Sep 2006, 12:29
Gast INNER JOINT dupliziert Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: Standardwert richtig festlegen 13 daflowjoe 1022 12. Sep 2006, 14:45
rita2008 Standardwert richtig festlegen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Word VBA