Office: Datenbank Abfrage - einzelne Datensätze löschen

Helfe beim Thema Datenbank Abfrage - einzelne Datensätze löschen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hey ihr Lieben, ich habe eine Abfrage erstellt, die ich dann automatisiert in Excel habe. Nun ist es aber so, dass in dieser Abfrage 2-3 Datensätze... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Greta Menke, 3. Februar 2023.

  1. Datenbank Abfrage - einzelne Datensätze löschen


    Hey ihr Lieben,

    ich habe eine Abfrage erstellt, die ich dann automatisiert in Excel habe. Nun ist es aber so, dass in dieser Abfrage 2-3 Datensätze enthalten sind, die sich mehr oder weniger doppeln, jedoch dürfen die in der richtigen Datenbank nicht fehlen- jedenfalls müsste ich in meinen Excel Analysen extrem komplizierte Formeln anwenden um diese wieder zu "substrahieren".

    Habt Ihr da eine Lösung oder Formel, wie ich einzelne Datensätze einer Abfrage entfernen kann? Den Butten "Duplikate entfernen" habe ich auch schon ausprobiert aber Access löscht mir dann immer genau den einen Datensatz den ich behalten will...

    Danke für eure Hilfe :)

    Post ist auch hier zu finden: Datenbank Abfrage - einzelne Datensätze löschen
     
    Greta Menke, 3. Februar 2023
    #1
  2. andyfau
    andyfau hat Ahnung
    Hallo,
    erstelle eine Auswahlabfrage, die die zu löschenden Datensätze anzeigt. Dafür muss es natürlich irgendein Gesetzmäßigkeit geben wodurch du die Sätze über die Kriterien eingrenzen kannst.
    Wenn dann bei Ausführung der Abfrage genau die und nur die Sätze angezeigt werden, die du löschen möchtest, kann du in der Entwurfsansicht der Abfrage die rechte Maustaste drücken und den Abfragetyp auf Löschabfrage ändern.
    Wenn du dann (unten rechts) auf Vorschau gehst, sollten wieder genau die zu löschenden Sätze angezeigt werden.
    Wird die Abfrage dann regulär ausgeführt, werden diese Datensätze gelöscht.
     
    andyfau, 3. Februar 2023
    #2
  3. Doming
    Doming hat Ahnung
    Hallo Greta,
    verstehe ich das richtig? Du hast in Deiner Excel-Datei doppelte Datensätze, im Access-Ursprung aber nicht?
    Sind denn die doppelten Datensätze in der Abfrage, aus der Excel seine Daten zieht, ebenfalls vorhanden? Dann würde ich den Fehler erstmal dort suchen.
     
  4. Datenbank Abfrage - einzelne Datensätze löschen

    Hallo Doming,
    nein, ich habe in meiner Access Datenbank ein paar Datensätze die ich so nicht in Excel gezeigt bekommen möchte :) Jedoch sollen diese Datensätze weiterhin in Access bestehen bleiben, nur "brauche" ich sie für die aktuelle Abfrage und Datenauswertung in Excel nicht (Ich müsste sie mir dann mit komplizierten Formeln wieder in Excel rausrechnen).

    Die Idee von Andyfau hört sich gut an. Ich hatte noch eine andere Idee: Eine weitere Spalte einfügen, und ein eindeutigen Satz bei den zu löschenden Datensätzen einfügen, welche ich dann in meiner Abfrage mit der Formel "nicht xx" nicht angezeigt bekomme :)
     
    Greta Menke, 6. Februar 2023
    #4
  5. Okay, ich nehme meine Lösung zurück: Das wird nicht funktionieren.

    Das Problem ist, ich hab mehrwertige Felder definiert: In der Abfrage werden mir die "Values" angezeigt - das heißt, die Datensätze bei denen ich mehrere Daten pro mehrwertiges Feld definiert habe, werden doppelt ausgespuckt, mit immer einem der Kriterien im mehrwertigen Feld.

    Nun habe ich versucht, durch die "nicht-Formel" in der Abfrage unter der Spalte mehrwertiges Feld, so die Datensätze löschen zu können - da erhalte ich aber eine Fehlermeldung - weiß jemand warum?

    Wenn ich nun eine Spalte hinzufüge und irgendetwas definiere, anhand dessen ich den Datensatz später wieder löschen kann, wird dies später in meiner Abfrage in beiden Datensätzen mit dem mehrwertigen Feld auftauchen - also dann auch beide löschen, wenn ich eine "nicht-Bedingung" definiere.

    Was soll ich tun?

    Andyfau: Du meinst also eine Abfrage von meiner bestehenden Abfrage, aus denen ich Datensätze gelöscht haben möchte? Ich könnte die zu löschenden Datensätze ideal über Kriterien eines Mehrwertigenfeldes definieren - dies geht jedoch nicht.

    Was gibt es sonst für Lösungen?
     
    Greta Menke, 6. Februar 2023
    #5
  6. Doming
    Doming hat Ahnung
    Sprich nicht so leichtfertig von „Löschen”, wenn Du nur willst, dass die Daten da bleiben, aber in Deiner Excel-Export-Abfrage nicht angezeigt werden sollen.
    Es muss doch ein Kriterium geben, nach dem Du entscheidest, was Du im Excel haben willst und was nicht. Das schreibst Du als Kriterium in Deine Abfrage, damit sie nur das anzeigt, was zu 100% auch im Excel gebraucht wird, nicht mehr.
    Wenn das nicht so einfach in einer Abfrage geht, dann schalte mehrere hintereinander.

    Aber das alles Theoretisiererei. Um Dir Tipps geben zu können, die zu Deinem Problem passen, stell eine Kopie Deiner Datenbank (mit gefakten Daten) und eine Exceldatei hier rein, die zeigt, was bei der Bastelei dabei herauskommen soll.
     
  7. Hallo,
    ja, hast Recht :) Hab eine Test Datenbank hochgeladen: Die ist natürlich extrem vereinfacht, aber beschreibt mein Grundproblem.

    In meiner Tabelle "Basis" habe ich 5 Produkte. Diese sind jeweils Anwendungskategorien zugeordnet, welches einem Kombinationsfeld entspricht. Produkt 1 ist zwei Werten in den "Anwendungskategorien" zugeordnet.

    In der Abfrage 1 habe ich mir die Values von den Anwendungskategorien gezogen, da Excel sie anders nicht lesen kann (korrigiere mich gerne wenn hier falsch bin, oder es doch Möglichkeiten gibt, in Excel einer Zelle mehrere Werte zu zuordnen?)
    -> In der Abfrage kommt Produkt 1 nun zweimal vor, jeweils mit dem unterschiedlichen Wert der Anwendungskategorie - logisch.

    Nun will ich, dass Produkt 1 mit der Anwendungskategorie "Psyche" nicht in meiner Abfrage auftaucht - weil ich nun mal diesen Wert in Excel nicht möchte (Wie gesagt, ich kann den Satz über komplizierte Formeln natürlich auch in Excel aus meinem Datensatz extrahieren, aber wenn es einfacher in MS Access geht, warum nicht?)

    Wenn ich eine "nicht Psyche" Bedingung in meine Abfrage integriere löscht es mir alle Datensätzen die das enthalten. Das gleich wenn ich eine "nicht Produkt 1" Abfrage integriere - macht auch alles Sinn. So, wie kann ich nun, nur den Datensatz "Produkt 1", welcher Psyche zugeordnet ist, nicht in dieser Abfrage anzeigen lassen?
     
    Greta Menke, 6. Februar 2023
    #7
  8. Doming
    Doming hat Ahnung

    Datenbank Abfrage - einzelne Datensätze löschen

    Hallo Greta,
    sorry, für Deine Felder mit mehreren Kategorien bin ich zu doof, das kannte ich noch nicht.

    Ich habe Deine DB mal so nachgebaut, wie ich sie aufgesetzt hätte und hier angefügt.
    Die Tabellen Produkt und Anwendungskategorien sind bei mir getrennt.
    Dann habe ich eine m:n-Tabelle (Produktanwendungen), die die verschiedenen Anwendungen aufzählt.
    Somit ist wie bei Dir aus den 5 Produkten eine Tabelle mit 6 Datensätzen geworden, Produkt1 kann sowohl das eine als auch das andere.
    Dadurch, dass die Tabellen in den Beziehungen über die m:n-Tabelle verknüpft sind
    Datenbank Abfrage - einzelne Datensätze löschen upload_2023-2-6_17-55-43.png
    Kann man in der Abfrage nach den einzelnen Kategorien filtern.
    Wenn Du bei meiner Abfrage2 die 1 aus dem Kriterium rausnimmst, zeigt die Abfrage auch alle Datensätze an.
     
  9. Hallo Doming,
    spannende Herangehensweise und natürlich auch ganz smart mit den getrennten Tabellen.

    Jedoch löst dies mein Problem nicht wirklich: Ich kann wohl in der Abfrage 2 nach Kriterien filtern, z.B wie bei dir, nach Kriterium Nummer 1: Aber alle anderen Datensätze welche dieses Kriterium erfüllen, in dem Fall "Psyche", fallen dann auch raus. Genau das darf nicht passieren. Sondern: Wie in Abfrage 1 gut ersichtlich, soll nur der Datensatz mit "Produkt 1" und "Psyche" gelöscht werden - alle anderen müssen genau so in der Abfrage auftauchen.

    Gibt es hier sonst noch irgendwelche Formeln die ich in die Bedingungen bringen könnte?
     
    Greta Menke, 7. Februar 2023
    #9
  10. Doming
    Doming hat Ahnung
    Hallo,
    Du kannst doch alle Deine Bedingungen in die Kriterien schreiben.
    Wenn nur Produkt1 in Verbindung mit Psyche herausgefiltert (nicht gelöscht!) werden soll, schreibt man als Kriterium bei Kategorie:
    Nicht ([FS_Prod]=1 Und [FS_AKat]=2)

    Wenn Du nicht mit den Fremdschlüsseln arbeiten willst, kannst Du natürlich die Klartexte herausfiltern


    Nicht ([Produkt] = "Produkt1" und [Kategorie] ="Psyche")

    Ich vermute allerdings, dass es um mehr als nur die Bedingung Produkt1 & Psyche geht, die allgemeine Formel kannst nur Du anpassen.
     
    Zuletzt bearbeitet: 7. Februar 2023
  11. Wow, danke! Genau die zweitere Formel habe ich die ganze Zeit gesucht :D Ich bin Excel gewöhnt und kenne mich noch nicht so gut mit den Formulieren in MS Access aus!

    Meine Lösung habe ich noch mit angehangen - Merci!
     
    Greta Menke, 7. Februar 2023
    #11
  12. Naja, zu früh gefreut :D Leider lässt sich die Formel so nicht übertragen, wie es aussieht macht das mehrwertige Feld dabei immer Probleme. Weiß jemand was diese Fehlermeldung heißen soll?
     
    Greta Menke, 7. Februar 2023
    #12
  13. Doming
    Doming hat Ahnung

    Datenbank Abfrage - einzelne Datensätze löschen

    Hm, das ist wohl der Grund, warum ich keine Ahnung von mehrwertigen Feldern habe. In allen Diskussionen wird davon wegen der damit zusammenhängenden Probleme abgeraten.
    Mein einziger Tipp dazu bleibt der, Deine mehrwertigen Felder mittels Tabellenerstellungsabfrage in eine eigene Tabelle umzuwandeln und damit zu arbeiten.
    Ich klinke mich hier jetzt aus, sorry, dass ich bei Deinem DB-Modell nicht helfen kann.
     
Thema:

Datenbank Abfrage - einzelne Datensätze löschen

Die Seite wird geladen...
  1. Datenbank Abfrage - einzelne Datensätze löschen - Similar Threads - Datenbank Abfrage einzelne

  2. Abfrage 2 Tabellen aus 2 SQL Datenbanken sehr langsam

    in Microsoft Access Hilfe
    Abfrage 2 Tabellen aus 2 SQL Datenbanken sehr langsam: Hallo liebe Community, ich habe ein riesen Problem. Ich kombiniere in einer Abfrage (für Endlosformular) 2 Tabellen aus 2 getrennten SQL Datenbanken. Das geht auch alles (Erster Abruf auch...
  3. Kopieren einer Abfrage in einer Datenbank

    in Microsoft Access Tutorials
    Kopieren einer Abfrage in einer Datenbank: Kopieren einer Abfrage in einer Datenbank Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr......
  4. Links auf Abfragen in der gleichen Datenbank – Interne Links aktivieren (Office 365)

    in Microsoft Access Hilfe
    Links auf Abfragen in der gleichen Datenbank – Interne Links aktivieren (Office 365): Guten Tag, hier mein Problem: In einem Textfeld einer Tabelle / eines Formulars innerhalb einer ACCESS-Datenbank will ich einen (Hyper-)Link auf eine bestehende Abfrage innerhalb der gleichen...
  5. Datenbank mittels Abfrage nach einer Spalte zusammenfassen

    in Microsoft Access Hilfe
    Datenbank mittels Abfrage nach einer Spalte zusammenfassen: Hallo Zusammen, ich möchte in Access eine Abfrage basteln, mit der die Werte von mehreren Spalten gemäß den Werten einer Spalte zusammengefasst werden: Spalte A Spalte B Spalte C...
  6. Abfrage einer SQLITE - Datenbank

    in Microsoft Excel Hilfe
    Abfrage einer SQLITE - Datenbank: Hallo, ich möchte Felder aus einer SQLITE - Datenbank nach Excel importieren. Soweit funktioniert alles über den SQLITE - Datenbanktreiber. Leider stimmt eine Abfrage nicht so recht. Es...
  7. Nach Abfrage Werte in Tabelle in Datenbank abspeichern

    in Microsoft Excel Hilfe
    Nach Abfrage Werte in Tabelle in Datenbank abspeichern: Hallo, eine Frage. Ich habe in Ecxel eine Abfrage generiert. ALso man kann ein paar Sachen auswählen und am Ende kommt eine Zeit (Summe) heraus. Jetzt möchte ich, das ich diese Abfragen...
  8. Datenbanken verknüpfen und Abfrage erstellen

    in Microsoft Access Hilfe
    Datenbanken verknüpfen und Abfrage erstellen: Ich möchte meine Sachbücher inhaltlich nach Stichwörtern verwalten. In einer Datenbank sind die Buchtitel enthalten. In einer weiteren Datenbank sind die entsprechenden Stichwörter enthalten, die...
Schlagworte:
  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