Einzelnen Beitrag anzeigen
  #1  
Alt 07.08.2009, 22:30:46
mitch26 mitch26 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 46
Beiträge: 7
falsche Sql Abfrage

Nabend,

ich habe Probleme mit einer sql-abfrage. Zum leichteren Verständnis (für mich) habe ich meine mysql-db in Access nachgebaut.

Ich habe 4 verschiedene Tabellen. Eine Haupttabelle (tbl_objekt) eine für den Ort (tbl_ort) eine für eine bestimmte Zuordnung (tbl_zuordnung), diese sind durch den Primärschlüssel aus der Tabelle (tbl_objekt) verbunden.

Für dir Tabelle (tbl_zuordnung) habe ich noch eine 2. Tabelle erstellt (tbl_zuordnung_unter).
Hier habe ich die den Primärschlüssel von (tbl_zuordnung) als Fremdschlüssel in (tbl_zuordnung_unter) eingefügt.

Hier mal dargestellt:

http://s1.directupload.net/file/d/1879/x2r9tsy5_jpg.htm

So nun kommts, wenn ich nun eine Abfrage aus allen Tabellen haben will. Wird mir der Wert aus (tbl_objekt) mehrfach angezeigt. Und zwar so oft wie es in (tbl_zuordnung_unter) mit dem Datensatz aus (tbl_zuordnung) verknüpft ist.

Das Ergebnis:

http://s12b.directupload.net/file/d/...9q5miw_jpg.htm

Meine Abfrage lautet:

Code:
SELECT tbl_objekt.objekt_nr, tbl_objekt.strasse, tbl_zuordnung.zuordnung, tbl_ort.ort, tbl_zuordnung_unter.zuordnung_unter
FROM (tbl_zuordnung INNER JOIN (tbl_ort INNER JOIN tbl_objekt ON tbl_ort.ort_nr = tbl_objekt.ort_nr) ON tbl_zuordnung.zuordnung_nr = tbl_objekt.zuordnung_nr) LEFT JOIN tbl_zuordnung_unter ON tbl_zuordnung.zuordnung_nr = tbl_zuordnung_unter.zuordnung_nr
WHERE (((tbl_objekt.objekt_nr)=2 Or (tbl_objekt.objekt_nr)=3));
Wie müsste ich denn meine Abfrage ändern oder liegt es gar an der Tabellenstruktur?

Ich hoffe ich konnte mein Problem halbwegs erklären und bedanke mich jetzt schonmal für die Hilfe.

Mitch
Mit Zitat antworten