PDA

Vollständige Version anzeigen : Filtern in Untergruppen


Akiba
25.10.2011, 12:41
Hallo,
Ich habe folgendes Problem und bin etwas ratlos. Ich hoffe ihr könnt mir helfen.

Situation:
Ich habe mit dem "Union Select"-Befehl eine Abfrage über 4zusammenhängene Tabellen erstellt, in der ich allen Datensätzen eine "Zuordnungs-Ip" zugeteilt habe. Zusammenhängende Datensätze besitzen die gleiche "Zuordnungs-IP". Als nächstets habe ich einen Bericht erstellt und ihn nach der "Zuordnungs-IP" gruppieren lassen. Das bedeutet ich habe die Gruppe "ZuordnungsIP", der über den "Union Select"-Befehl meine Datensätze aus den 4 Tabellen undergeordnet sind.

Problem:
Meine Aufgabe ist es, den Bericht nach einem Kriterium der Datensätze zu filtern. Wenn ich dieses jedoch über die Access-Filteraktion durchfürhe, wird nur der Datensatz angezeigt, der dem Kriterium entspricht, und nicht die anderen, die über die "ZuordnungsID" damit verknüpft sind.

Beispiel:
Ich habe 3 Datensätze zu einer "ZuordnungsIP": PC, Software, Hardware. Möchte ich jetzt den Datensatz PC filtern um nur die Notebooks (Bestandteil des Datensatzes PCs) zu sehen, werden der dazugehörige Software und Hardware Datensatz nicht angezeigt.

Lösungsidee:
- Es ist nicht möglich nach der "ZuordnungsIp" zu filtern oder zu sortieren.
- Eine Abfrage von der Abfrge wo nur wie im Beispiel die Notebooks und die dazugehörige Hardware+Software angezeigt wird, konnte ich nicht durch Bedingungen realisieren.
- Nach etwas anderem als der ZuordnungsIp zu gruppieren funktioniert nicht.

ebs17
25.10.2011, 13:22
Dein Anliegen ist nicht verständlich bzw. Du verwendest Begriffe falsch:

In einer UNION-Abfrage werden einfach Datensätze zusammengestellt (aneinandergehängt) und nicht über irgendwelche Felder verknüpft.

Akiba
25.10.2011, 13:31
Mir ist bewusst das der UNION Befehl keine Datensätze verknüpft. Ich meine damit dass ich ich dann durch den Union-Select Befehl Datensätze bekomme, wie im beispiel(PC, Hardware, Software), und diese dann, da sie alle die gleiche ZuordnungsIp besitzen, gruppiert angezeigt werden.

Tut mir leid wenn ich mich falsh ausgedrückt habe

ebs17
25.10.2011, 13:46
UNION gruppiert auch nicht, sondern das würde über eine zusätzliche GROUP BY-Klausel erfolgen.

maikek
25.10.2011, 13:58
Moin,
von Access-Filterdingsdas hab' ich keinen Plan. Aber eine entsprechende Abfrage müsste wohl etwa so aussehen:
SELECT * FROM DeineAbfrage AS A WHERE ZuordnungsIP IN (SELCECT ZuordnungsIP FROM DeineAbfrage AS B WHERE DeinFeld = DeinKriterium)
Wobei ich an deiner Stelle noch mal über die "4 zusammenhängenden Tabellen" nachdenken würde, das sieht mir nach einem falschen Datenmodell aus.
maike