Löschabfrage

Moderator: ModerationP

Löschabfrage

Beitragvon MJBecker » 19. Nov 2020, 09:27

Hallo
Ich habe zwei Tabellen (tbl1, tbl2), mit teilweise identischen Datensätzen, die ich löschen möchte. Das Löschkriterium ist das gleiche Geburtdatum. Die zu löschenden Datensätze sind in tbl1
Der nicht funktionierende SQL-Code im Abfrage-Assistenten lautet:
Code: Alles auswählen
DELETE tbl1.*, tbl.Geburtsdatum
FROM tbl1, tbl2
WHERE (((tbl2.Geburtsdatum)=[tbl1].[Geburtsdatum]));

Wie muss der Code korrigiert werden?
Habt Dank Manfred
MJBecker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 182
Registriert: 11. Mär 2013, 14:50

Re: Löschabfrage

Beitragvon Bitsqueezer » 19. Nov 2020, 09:41

Hallo,

vergleiche doch mal das, was Du da zusammengeschrieben hast, mit dem hier:

https://docs.microsoft.com/de-de/office ... access-sql

Ich kann dort nichts entdecken, was Deine Schreibweise zulassen würde.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7911
Registriert: 21. Jun 2007, 12:17

Re: Löschabfrage

Beitragvon Gast » 19. Nov 2020, 11:05

Tendenziell sollte gerade bei Aktionsabfragen (=> Änderungen an Tabellen-Datensätzen) nur eine Tabelle in der oberen Ebene verwendet werden. Dann "weiß" die DB-Maschine, welche Tabelle behandelt werden soll.
Code: Alles auswählen
DELETE
FROM tbl1
WHERE Geburtsdatum IN (SELECT Geburtsdatum FROM tbl2)
Gast
 

Re: Löschabfrage

Beitragvon MJBecker » 19. Nov 2020, 11:06

Hallo Christian,
Der zusammengeschriebene Code stammt vom Abfrage-Assistenten wie geschrieben. Vielleicht geht es ein bißchen freundlicher. Sonst lass es einfach.
Manfred
MJBecker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 182
Registriert: 11. Mär 2013, 14:50

Re: Löschabfrage

Beitragvon MJBecker » 19. Nov 2020, 11:12

Hallo,
Auch folgender Code
Code: Alles auswählen
DELETE tbl1.*
FROM tbl1, tbl2
WHERE (((tbl2.Geburtsdatum)=[tbl1].[Geburtsdatum]));

brachte nur die Meldung, dass "Löschen aus angegebenen Tabellen nicht möglich ist". Es werden aber die betreffenden Datensätze in der Datenblattansicht angezeigt.
Manfred
MJBecker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 182
Registriert: 11. Mär 2013, 14:50

Re: Löschabfrage

Beitragvon mmarkus » 19. Nov 2020, 12:17

MJBecker hat geschrieben:Hallo Christian,
Der zusammengeschriebene Code stammt vom Abfrage-Assistenten wie geschrieben.


Ah, der Assistent ist schuld.

Orientiere dich einfach am Beispiel von Gast, der kennt sich aus. Gast Eberhard hat nämlich keine KI.
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1963
Registriert: 16. Apr 2012, 16:07
Wohnort: Oberösterreich

Re: Löschabfrage

Beitragvon Marmeladenglas » 20. Nov 2020, 10:05

Ok, die Lösung wurde schon gezeigt... hatte ich übersehen.
Marmeladenglas
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 16883
Registriert: 23. Jan 2008, 18:55


Zurück zu Access Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste