Office: (Office 2010) Problem bei Filterung in einer Abfrage

Helfe beim Thema Problem bei Filterung in einer Abfrage in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Grüßgott, folgendes Problem: Ich habe eine Abfrage die auf drei Tabellen zurückgreift. Tabelle "Regularie (entspricht Paragraphen 1-50" , Tabelle... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Hansworscht99, 29. Juni 2020.

  1. Problem bei Filterung in einer Abfrage


    Grüßgott,

    folgendes Problem:

    Ich habe eine Abfrage die auf drei Tabellen zurückgreift. Tabelle "Regularie (entspricht Paragraphen 1-50" , Tabelle "Verfahren" und Tabelle " Verfahrensspezifikation" (entspricht den Buchstaben A-Z).

    Nun ist es so das ich in meiner Abfrage IMMER alle Regularien (Paragraph 1-50) anzeigen möchte. Nun sind einzelnen Paragraphen teilweise mehrere Verfahren, teilweise nur ein Verfahren und teilweise kein Verfahren zugeordnet. Zwischen beiden Tabellen herrscht eine äußere Verknüpfung.

    Hinzu kommt das die Verfahren nach einem bestimmten Kriterium (A-z)gefiltert (=Verfahrensspezifikation) werden sollen.

    Nun folgendes Szenario. Paragraph 1 wird das Verfahren XX zugeordnet und die Verfahrenspezifikation A. Paragraph 2 wird das Verfahren YY zugeordnet und die Verfahrensspezifikation B. Nun Filter ich das ganze nach der Verfahrensspezifikation B wird mir leider Paragraph 1 nicht mehr angezeigt.
    Ich hätte aber gerne das mir für das Szenario Paragraph 1 angezeigt wird (ohne Verfahren und Verfahrensspezifikation) und Paragraph 2 mit Verfahren YY und Verfahrensspezifikation B ....

    ich weiß leidern nicht weiter und ich hoffe man kann es nachvollziehen was mein Anliegen ist.

    Jmd eine Idee ?
    Man müsste praktisch die Regularie(n) unabhängig von dem Filter machen

    :)
     
    Hansworscht99, 29. Juni 2020
    #1
  2. Moin,
    Was bedeutet das genau?
    Bitte bei Abfragen immer die SQL posten (Menü Ansicht, SQL-Ansicht).
    maike
     
    maikek, 30. Juni 2020
    #2
  3. In einer äußeren Verknüpfung wird die Tabelle, die alle enthaltenen Datensätze anzeigt, als Basistabelle bezeichnet. Die Tabelle, die nur einige (übereinstimmende) Datensätze anzeigt, ist die so genannte sekundäre Tabelle -> Damit löse ich das Thema, dass ich alle Regularien anzeigen kann, auch wenn teilweise kein Verfahren zugeordnet ist. Nur sobald ich die Verfahrensspezifikation und den Filter dazunehme tauch das Problem auf....

    ich muss schauen das ich das hier posten kann, da ich nicht vom Arbeitsrechner in dem Forum sein kann. Ich hab auch schon versucht das Problem so einfach und verständlich wie möglich zu adaptieren.
    Hast du vllt so eine Idee wie man das Problem lösen könnte ?

    Schonmal danke !
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Hansworscht99, 30. Juni 2020
    #3
  4. Problem bei Filterung in einer Abfrage

    Was ein OUTER JOIN ist weiß ich schon, ich wollte nur sehen, wie der genau aussieht *wink.gif* .
    Ich fürchte ohne das SQL-Statement kommen wir hier nicht wirklich weiter.
    maike
     
    maikek, 1. Juli 2020
    #4
  5. Für ein wirkliches Verständnis ist i.d.R. ein Blick auf das Beziehungsbild sinnvoller, weil aussagekräftiger als etwas Prosa von einem etwas "Unschlüssigen".

    Auch von einer Abfrage zeigt man besser die vollständige (formatierte) SQL-Anweisung, da sie die komplette Verarbeitung zeigt, was wiederum aussagekräftiger ist als Bemerkungen zu Verknüpfungen (was, wie).

    Ansonsten: Verstehst Du Prosa?
    Um alle Daten einer Tabelle anzuzeigen, bindet man weitere Tabellen per OUTER JOIN an.
    Wenn bei richtiger Verknüpfung durch zusätzliche Filter Datensätze ungewünscht verschwinden, liegt das u.a. an der Reihenfolge der Abfrageausführung: Grundlagen - SQL ist leicht (11) - Reihenfolge der Abfrageabarbeitung
    Also Abfrage umformulieren.
     
    ebs17, 1. Juli 2020
    #5
  6. Die SQL Anweisung sieht wie folgt aus.

    SELECT [tbl_Regularie].[Paragraphen],tbl_Verfahren.ID_Value,Abfrage.[tbl_Verfahrenssepzifikation].[Zuordnung]

    FROM ([tbl_Regularie] INNER JOIN tbl_Verfahren ON [tbl_Regularie].ID = tbl_Verfahren.[ID_Regularie]) LEFT JOIN Abfrage ON tbl_Verfahren.ID_Value = Abfrage.tbl_Verfahrensspezifikation.ID

    WHERE (((([tbl_Regularie].[Paragraph]) Not Like "N/A") AND (Abfrage.[tbl_Verfahrensspezifikation].[Zuordnung] Not Like "*")) OR ((( Abfrage.[tbl_Verfahrenssepzifikation].[Zuordnung]) LIKE "*A*" ))

    ORDER BY [tbl_Regularie].ID

    Wenn ich das richtig verstehe ist die Reihenfolge in WHERE der grund ?
     
    Hansworscht99, 1. Juli 2020
    #6
  7. Ja, es macht im Ergebnis einen Unterschied, ob zuerst LEFT JOIN Abfrage... und danach WHERE Abfrage... ausgeführt wird oder umgedreht. Durchdenke das mal.

    Der Ausweg wäre, Abfrage erst zu filtern in einer gesonderten (Unter)Abfrage und das Ergebnis daraus dann per LEFT JOIN anzubinden.

    Nebenbei:
    Code:
    Das ist grauselig, besonders in der Ausführung. Manchmal legt man dann ja auch Wert auf Performance.
    Anders als irgendwas (=> NICHTS) könnte man so darstellen:
    Code:
     
    ebs17, 1. Juli 2020
    #7
  8. Problem bei Filterung in einer Abfrage

    Okay danke dafür.

    Ich hab das ganze jetzt so umgesetzt. Generell funktioniert es das ich zuerst in einer Unterabfrage meine Verfahrensspezifikation filtere und dann in einer Abfrage zusammenführe. Nur leider erhalte ich nun für das Szenario folgendes:

    Paragraph 1 wird angezeigt (ohne Verfahren und Verfahrensspezifikation) und Paragraph 2 wird einmal mit Verfahren YY und Verfahrensspezifikation B angezeigt und einmal nur Paragraph 2 (ohne Verfahren und Verfahrensspezifikation)....

    SQL Code der Unterabfrage:


    FROM tbl_Verfahren INNER JOIN [tbl_Verfahrensspezifikation] ON tbl_Verfahren.[ID_Verfahrenssepzifikation].Value = [tbl_Verfahrensspezifikation].ID

    WHERE (((([tbl_Verfahrensspezifikation].[Zuordnung]) Is Null OR ([tbl_Verfahrensspezifikation].[Zuordnung]) Like "*A*"));
     
    Hansworscht99, 1. Juli 2020
    #8
  9. Schade, mein Blick darauf ist gerade unter den Tisch gefallen ...

    Ansonsten: Wenn man mit dem Ergebnis nicht zufrieden ist, muss man die Abfrage umformulieren. Es gibt da meist mehr als eine Möglichkeit, vor allem, wenn man wie man sollte SQL als Mengenverarbeitung begreift und nicht nur probierend im Abfrageeditor herumklickt.
     
    ebs17, 1. Juli 2020
    #9
  10. Ich begreife es tatsächlich nicht.
    Und jah ich hab schon den ein oder andere Text dazu im Internet gelesen.

    Ich bin weiterhin offen für hilfreiche Erklärungen, sowohl zum Verständnis als auch zum Lösen des Problems.
     
    Hansworscht99, 1. Juli 2020
    #10
  11. Ich habe etwas herumgeändert:
    Code:
    Zum Lesen vielleicht hilfreich: Grundlagen - SQL ist leicht (6) - Komplexe Abfragen schreiben und lesen
     
    ebs17, 1. Juli 2020
    #11
  12. Danke für die Antwort. Ich werde es mir heute mal anschauen und ggf. nochmal melden falls Rückfragen etc. *Smilie
     
    Hansworscht99, 2. Juli 2020
    #12
  13. Problem bei Filterung in einer Abfrage

    kannst du mir den zweiten WHERE Teil mit dem größer/kleiner Zeichen erklären ? Da zeigt es mir beim SQL CoDe eingeben einen Fehler an.

    Ohne diesen Teil konnte ich es bisher rekonstruieren, bisher aber natürlich ohne die richtige Ausgabe zu erhalten was wohl daran liegt das der WHERE Teil fehlt ...?
     
    Hansworscht99, 3. Juli 2020
    #13
  14. Deine Vorgabe (die verwirrenden Klammern lasse ich wegen besserer Lesbarkeit weg):
    Code:
    LIKE macht Mustersuche. Mustersuche ohne muster macht wenig Sinn. Du hast ja einen festen Ausdruck. Das hieße also
    Code:
    In einer ordentlichen Datenbank hat man schnell ein paar mehr Daten und braucht da trotzdem Performance und also Indexnutzung. Ein ungleich wie auch ein NOT verhindern Indexnutzung. Daher diese "aufwändige2 Aufteilung.
    Nachlesen kannst Du das ausführlich im Inhalt, auf den meine erste Fußzeile verlinkt.

    Ich zähle es zum guten Stil, wenn man solche "Optimierungen" gleich erledigt (da es ja nichts extra kostet).
     
    ebs17, 3. Juli 2020
    #14
Thema:

Problem bei Filterung in einer Abfrage

Die Seite wird geladen...
  1. Problem bei Filterung in einer Abfrage - Similar Threads - Problem Filterung Abfrage

  2. Data Transform, Problem with delimiter

    in Microsoft Excel Hilfe
    Data Transform, Problem with delimiter: Hello Community, I encounter one problem with excel. When I export table from csv I have a delimiter semicolon, but it doesn't work. I found solution. If I would go to Power Query Editor - Split...
  3. Problem Datenstruktur Mitglieds-Datenbank

    in Microsoft Access Hilfe
    Problem Datenstruktur Mitglieds-Datenbank: Hallo Leute, Ich habe eine Frage zu einer Vereins-Mitglieder-Datenbank, die ich erstelle. Die Vereinsmitglieder sind in einer Tabelle erfasst, also Nachname, Vorname, usw. Und es gibt einen...
  4. Seltsames Problem beim Sortieren

    in Microsoft Excel Hilfe
    Seltsames Problem beim Sortieren: Hallo! :) Ich wollte in Microsoft Excel folgende Auflistung so sortieren, dass die Werte neben den Jahreszahlen absteigend aufgelistet werden, die Jahre mit den höchsten Zahlen oben stehen:...
  5. Problem mit verschachtelter WENN Formel

    in Microsoft Excel Hilfe
    Problem mit verschachtelter WENN Formel: HiHo Ich habe ein Problem mit einer verschachtelten WENN Formel. Zur Erläuterung: D11 ist ein Hover, bei dem für die Abfrage "Arbeitstag" und "Zeitausgleich" relevant sind. C11 ist ein Datum. Es...
  6. Problem Formel

    in Microsoft Excel Hilfe
    Problem Formel: Hallo zusammen, ich benötige dringend Hilfe bei einer Formel. Scheinbar habe ich ein Brett vorm Kopf. Es wäre super nett wenn mir jemand helfen kann. Die Formel soll über ein Datum laufen. Ich...
  7. Excel TXT-File Import Problem

    in Microsoft Excel Hilfe
    Excel TXT-File Import Problem: Wenn ich ein txt-File in ein Excel importieren möchte, werden mir nur 4 Spalten anstatt 7 Spalten Angezeigt. Unten in dem Beispiel könnt ihr sehen das txt-File hat daten für 7 Spalten jedoch...
  8. Excel Problem: Filterung nach 5-stelligen Zahlen

    in Microsoft Excel Hilfe
    Excel Problem: Filterung nach 5-stelligen Zahlen: Hallo liebes Forum, ich habe derzeit ein Problem auf Arbeit. Wir verwenden ein Warenwirtschaftssystem. In diesem Warenwirtschaftssystem sind alle unsere Artikel, Einkäufe, Verkäufe, Statistiken,...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden