-
SQL zur Suche von Eintrag mit größtem Wert aus Liste
Hallo zusammen,
da ich gerade bei einem SQL etwas auf dem Schlauch stehe und nicht weiterkomme, bin ich auf dieses Forum gestoßen. Vielleicht kann mir hier jemand einen guten Tip geben.
Folgende Situation
Werktag Vertragsnr Daten
----------------------------------
1 12345 .......
2 12345 .......
1 54321 .......
2 54321 .......
4 54321 .......
Problem:
In meiner Tabelle stehen jeweils mehrere Zeilen zu der gleichen Vertragsnummer, in diesem Fall also 2 zur 12345 und 3 (nicht fortlaufend numeriert) zur 54321.
Für die weitere Verarbeitung benötige ich in der Tabelle nur noch die Zeilen mit der höchsten Werktags-Nummer pro Vertragsnummer. Die übrigen Zeilen können gelöscht werden.
Fällt jemandem eine einzelne SQL-Abfrage ein, mit der erreicht wird, daß in der Tabelle nur noch die - in diesem Fall 2 - hervorgehobenen Zeilen übrig bleiben.
Da die Tabelle sehr umfrangreich sein kann, möchte ich auf eine Schleife über alle Zeilen gerne verzichten und das Ganze möglichst mit einer einzigen Abfrage erschlagen.
Falls mir jemand einen guten Tip geben könnte, wäre ich dafür sehr dankbar.
Gruß,
Miranda
-
Quick and Dirty
Hallo Miranda,
hier eine quick und dirty Variante.
PHP-Code:
DELETE FROM MyLib/MyTable
WHERE digits(Vertrag) concat digits(Werktag)
not in (select digits(Vertrag) concat
digits(max(Werktag))
from MyTable
Group by Vertrag)
Bitte nochmal testen!
Es gibt bestimmt auch elegantere Möglichkeiten
Birgitta
-
Das reicht so nicht, wenn nicht in einem 3. Feld vermerkt ist, welcher Satz denn tatsächlich der letzte ist (z.B. Zähler oder Datum), da die Kombination Vertrag und Werktag ja mehrfach vorkommen kann:
delete from myfile A
where digits(Vertrag) concat digits(Werktag) concat digits(xxxx)
in (select digits(Vertrag) concat digits(Werktag) concat digits(xxxx)
from myfile b
where a.vertrag=b.vertrag and a.werktag=b.werktag and
a.xxxx < (select max(xxxx) from myfile c where a.vertrag=c.vertrag and a.werktag=c.werktag)
)
-
Vielen Dank, mit den Tips habe ich es hinbekommen.
Gruß,
Miranda
Similar Threads
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 02-12-06, 19:45
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 14:53
-
By kuempi von stein in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 19-07-06, 14:34
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 28-06-06, 14:11
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
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