-
Zitat von Fuerchau
with x as (select akkto, max(akkdn1) Datum from kndauf
group by akkto)
select t01.adkto, Datum
from x join adr01pf t01 on x.akkto = t01.adkto and x.datum = t01.akkdn1
Wenn du nur mit dem Konto verknüpfst, bekommst du halt wieder jeden Satz.
Ich habe mir das fast gedacht.
In der Kundenauf steht Kundennummer und Auftragsdatum vom Kunden
1026 22.02.17
1026 10.01.17
1026 01.01.17
8999 22.02.17
8999 01.02.17
In der adr01pf steht nur die Kundennummer und Adresse.
Bei meiner Funktion bekomme jetzt 1026 3 mal angezeigt, aber mit dem Datum 22.02.17.
-
Vielleicht gibt's den Kunden mehrmals in der Adreßdatei?
SELECT * FROM ADR01PF WHERE ADKTO=1026
-
Die Dateifolge ist falsch.
Was ist deine Primary Tabelle?
with x as (select akkto, max(akkdn1) Datum from kndauf
group by akkto)
select * from x
liefert dir je akkto das letzte Datum aus KNDAUF.
Somit ist dies wieder deine Primary
with x as (select akkto, max(akkdn1) Datum from kndauf
group by akkto)
select * from x
inner join kndauf k on x.akkto=k.akkto and x.datum=k.akkdn1
hier kannst du dann gerne nochden Kundenstamm anhängen:
with x as (select akkto, max(akkdn1) Datum from kndauf
group by akkto)
select * from x
inner join kndauf k on x.akkto=k.akkto and x.datum=k.akkdn1
inner join adr01pf a on x.akkto = a.adkto
-
Reihenfolge
Zitat von Fuerchau
Die Dateifolge ist falsch.
Was ist deine Primary Tabelle?
hier kannst du dann gerne nochden Kundenstamm anhängen:
with x as (select akkto, max(akkdn1) Datum from kndauf
group by akkto)
select * from x
inner join kndauf k on x.akkto=k.akkto and x.datum=k.akkdn1
inner join adr01pf a on x.akkto = a.adkto
Genau das war das Problem.
Danke Dir. Dir Problematik ist das ich bei weiteren Dateien die ich noch lesen muß jeweils mehrere Ausprägungen habe wo ich eigentlich auch immer nur den ersten Satz bräuchte.
Das heißt ich müßte da auch eine cte machen.
Muß ich mal prüfen....
GG 4846
-
... machs dir doch nicht so schwer, wofür gibt es Views!
D*B
-
Das ändert aber nichts am Problem.
-
... ne, aber an der Lösung.
-
Zitat von BenderD
... ne, aber an der Lösung.
Du glaubst es kaum, aber ich habe es auch gestern mit einer View gelöst, wo ich komischerweise die Anzahl von Sätzen bekomme die ich erwartet habe.
Aber ich will ja noch ein wenig lernen und ein CTE schien mir da ein Lösungsansatz zu sein.
Außerdem eine View bleibt stehen und ich brauchte die Abfrage nur einmal für einen Kollegin damit sie sieht wo sie unterschieliche E-Mail Adressen hinterlegt hat. Das aber nur für Kunden die die letzen 3 Jahre bei uns bestellt haben. (Newsletter)
GG 4846
-
Zitat von KingofKning
Außerdem eine View bleibt stehen und ich brauchte die Abfrage nur einmal
Muss ja nich ;-)
*InzSr mit exec sql create view + exec sql drop view bei LR
-
Für solche AdHoc-Abfragen eignen sich u.U. QMQRY's. Mit diesen lassen sich dann simple Ausgabedateien erstellen.
Alternativ, da man mit den Daten ggf. noch was tun will, kann man das auch mit MS-Query in Excel reinladen.
Es gibt da wieder viele Möglichkeiten.
Übrigens kann in einer View natürlich auch CTE's verwendet werden.
-
... CTEs sind nix anderes als inline Views und erhöhen die Komplexität von Abfragen. Oft werden die dann in mehreren SQL Statements reingepackt. Einfacher und besser testbar ist es, die CTEs als Views anzulegen und dann mit denen weiterzuarbeiten. Für adhoc Queries würde ich da dann Extrakte ziehen. SQL ist m.E. nicht die Kunst in möglichst komplizierten Konstrukten Fehler unterzubringen, die nicht auffallen. Bei gutem Datenbank Design sind Abfragen einfach und reihenweise Konstrukte überflüssig.
D*B
Similar Threads
-
By Kirsten Steer in forum Archiv NEWSboard Events
Antworten: 0
Letzter Beitrag: 02-09-02, 10:25
-
By Koelch400 in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 15-08-02, 09:53
-
By RM Haaßengier in forum Archiv NEWSblibs
Antworten: 0
Letzter Beitrag: 04-06-02, 13:04
-
By delphix in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 23-01-02, 14:02
-
By RM Haaßengier in forum Archiv NEWSblibs
Antworten: 0
Letzter Beitrag: 22-10-01, 11:18
Tags for this Thread
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