Grüezi mitenand
Die Ursprünge der Access – DB liegen über 10 Jahre zurück.
Die Struktur der DB darf und kann ich nicht verändern.
Auszug aus der Struktur der relevanten Tabellen
T_Adressen:
ID_Kunde, Nachname, Vorname ......
T_Vermittlungen: (ca. 100 000 Datensätze)
ID_ Vermittlungen, Datum, Artikelnummer, Lieferant (=ID_Kunde), Abnehmer (=ID_Kunde), Qualität, Preis, .....
Alle Artikel sind Unikate mit eindeutiger Artikelnummer. Seit etwa 2 Jahren kommt es selten vor, dass der gleiche Artikel (mit gleicher Nummer) mehrmals vermittelt wird. Jede Vermittlung eines gleichen Artikels findet zwingend an einem anderen Tag statt.
Die neue SQL-Abfrage soll folgendes Resultat zeigen:
Artikelnummer (eindeutig)
Datum erste Vermittlung
Datum letzte Vermittlung
Lieferant erste Vermittlung
Lieferant letzte Vermittlung
Abnehmer erste Vermittlung
Abnehmer letzte Vermittlung
Qualität, Preis erste Vermittlung
Qualität, Preis letzte Vermittlung
Mir ist klar, dass ich das Problem mittels VBA lösen könnte. Aus Performancegründen ziehe ich jedoch eine SQL Lösung vor. Ich nehme an, dass es etwa 2 IN SELECT Anweisungen braucht.
ACC 07, Win 7
Ich nehme an, eine solche Fragenstellung wurde hier schon mal beantwortet. Ich finde aber den Term nicht um eine solche Diskussion zu finden.
Schöne Grüsse aus dem sonnigen Appenzelllerland
Ernst
SELECT
A.Artikelnummer,
A.Datum AS D_ErsteVermittlung,
B.Datum AS D_LetzteVermittlung
FROM
(
SELECT
T1.*
FROM
T_Vermittlungen T1
INNER JOIN
(
SELECT
Artikelnummer,
Min(Datum) AS E_Datum
FROM
T_Vermittlungen
GROUP BY
Artikelnummer
)
U1
ON T1.Artikelnummer = U1.Artikelnummer
AND
T1.Datum = U1.E_Datum) A
INNER JOIN
(
SELECT
T2.*
FROM
T_Vermittlungen T2
INNER JOIN
(
SELECT
Artikelnummer,
Max(Datum) AS L_Datum
FROM
T_Vermittlungen
GROUP BY
Artikelnummer
)
U2
ON T2.Artikelnummer = U2.Artikelnummer
AND
T2.Datum = U2.L_Datum) B
ON A.Artikelnummer = B.Artikelnummer
Die Feldliste kannst Du eigenständig erweitern.
MfGA
ebs
Grüezi mitenand
Herzlichen Dank, das ist die Lösung
So wie es aussieht fehlt in der Antwort die letzte Zeile Code bzw. ist nicht sichtbar.
Ich habe den Code noch ergänzt mit: WHERE B.Datum <> [A].[Datum]
Herzlichen Dank