-
Per SQL doppelte Sätze entfernen
Moin, moin.
Aus einer Datei sollen per SQL doppelte Sätze entfernt werden und zwar in Abhängigkeit eines Datums. Der Satz mit dem jüngsten Datum soll in der Datei verbleiben.
Etwa so:
delete from datei a
where
a.kunde in
(select b.kunde from datei b
group by b.kunde
having count(*) > 1)
and
a.datum <
(select max(c.datum) from datei c
where c.kunde = a.kunde)
Das Problem ist jedoch das Vorkommen von Sätzen, bei denen ein Kunde zwei Sätze mit gleichem Datum hat.
z. B.
0815 2009-01-23
0815 2009-01-23
0816 2009-02-01
0816 2008-12-31
0816 2007-12-31
In diesem Fall würde zwar Kunde 0816 korrekt gelöscht, d.h., nur der Satz aus 2009 bleibt bestehen. Kunde 0815 bleibt aber mit 2 Sätze in der Datei, weil meine Abfrage < Max(Datum) lautet. Ändere ich die Abfrage auf <= Max(Datum) werden aber fälschlicherweise beide Sätze von Kunde 0815 gelöscht.
Im Moment habe ich da ein grosses Brett vor dem Kopf und bitte um Anregungen, wie man dieses Problem lösen kann. Das Ganze müsste dann auch noch (bitte nicht lachen) unter V4R3 laufen.
Danke und Gruss
Ulli
-
In Ermangelung eines anderen Kriteriums kannst Du nur noch die relative Satz-Nr. prüfen und nur den Satz mit der höchsten relativen Satz-Nr. stehen lassen:
Etwa so:
PHP-Code:
delete from Datei a
where a.kunde in (select b.kunde from Datei b
group by b.kunde
having count(*) > 1)
and rrn(a) < (select Max(RRN (c)) from Datei c
where c.kunde = a.kunde
and c.Datum = (Select Max(Datum)
from Datei d
where c.Kunde = d.Kunde))
Birgitta
-
Danke Birgitta !!!
Mit der RRN kann ich 'was anfangen.
Gruss
Ulli
-
Denke aber daran, wenn du REUSEDLT(*YES) hast, dass die RRN nicht den aktuellsten Satz bezeichnen muss.
Similar Threads
-
By svente in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 23-01-07, 09:49
-
By steven_r in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 25-09-06, 08:22
-
By steven_r in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 18-07-06, 09:36
-
By Nennewitz in forum NEWSboard Programmierung
Antworten: 16
Letzter Beitrag: 28-06-06, 13:49
-
By hs in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 22-11-04, 10:30
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks