Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Bernd Sowa am Mai 16, 2025, 10:51:28

Titel: SQL Abfrage Filtern
Beitrag von: Bernd Sowa am Mai 16, 2025, 10:51:28
Hallo zusammen,
ich hatte gestern einen Denkfehler.

Die Lösung von gestern funktioniert aber sie reicht nicht aus.

Angepasste Problembeschreibung:
Ich habe eine Tabelle in der Personen mehrfach vorkommen können. Nur halt mit unterschiedlichem Änderungsdatum.

Neu: Dieses Feld kann auch leer sein (wenn die Person noch aktiv ist)

Wenn es also mehrere Datensätze mit der gleichen Person gibt und bei einem Datensatz ist das Feld [Aenderungsdatum] leer, soll diese Person komplett verschwinden.

Dann in der Abfrage (wie gestern) nur die Datensätze mit dem jüngsten Äderungsdatum anzeigen lassen und die anderen ausblenden (wenn Personen mehrfach vorhanden sind).
So dass jede Person nur ein mal vorkommt und zwar mit dem jeweils jüngstem Datum.

Ich hoffe, ich habe mich verständlich ausgedrückt.

Ist: Pers 1 ;
     Pers 1 ; 1990
     Pers 2 ; 2005
     Pers 2 ; 2001
     Pers 1 ; 2008
     Pers 3 : 2000

Soll: Pers 2 ; 2005
      Pers 3 ; 2000

Ich weiß nicht ob das möglich ist.
Titel: Re: SQL Abfrage Filtern
Beitrag von: Knobbi38 am Mai 16, 2025, 11:10:03
Hallo Bernd,

thematisch gehört das aber noch zu deinem letzten Thread - warum dann einen neuen aufmachen?

Leer ist in etwas schwammiger Begriff, aber wenn etwas nicht NULL sein soll, dann könnte man auf die Idee kommen, es mal mit 'is not NULL' zu probieren.

Gruß Knobbi38
Titel: Re: SQL Abfrage Filtern
Beitrag von: Bernd Sowa am Mai 16, 2025, 11:24:25
Hallo knobbi,
wenn ich die leeren einfach rausfilter bekomme ich die Datensätze mit der gleichen Person die ein Änderungsdatum haben trotzdem angezeigt. Das soll ja vermieden werden.

Du hast Recht, ich hätte den vorherigen Thread wieder aufmachen sollen.
Titel: Re: SQL Abfrage Filtern
Beitrag von: Knobbi38 am Mai 16, 2025, 11:56:04
Hallo Bernd,

ich habe meine Glaskugel verlegt, deshalb kann ich nicht erkennen, was du da eigentlich treibst.  ::)

Gruß Knobbi38
Titel: Re: SQL Abfrage Filtern
Beitrag von: Bernd Sowa am Mai 16, 2025, 12:25:03
Ich dachte, ich hätte es oben verständlich dargestellt.

Aus Tabelle:
    [Person];[Aenderungsdatum]
     Pers 1 ;
     Pers 1 ; 1990
     Pers 2 ; 2005
     Pers 2 ; 2001
     Pers 1 ; 2008
     Pers 3 : 2000

Soll in der Abfrage folgendes Ergebnis rauskommen:
      Pers 2 ; 2005
      Pers 3 ; 2000

Person 1 ist 3 x in der Tabelle. 2x mit Änderungsdatum, 1x ohne Änderungsdatum (Soll deshalb gar nicht angezeigt werden - weil noch aktiv im Unternehmen)
Person 2 ist 2x in der Tabelle, beide DS mit Änderungsdatum. Also bitte nur den DS mit dem Jüngsten Datum anzeigen.
Person 3 ist nur 1x in der Tabelle, mit Änderungsdatum. Anzeigen.

Vielleicht auch in mehreren Schritten.
1. Schritt: aktive rausfiltern
2. Schritt: nur die jüngsten Datensätze anzeigen lassen

Hintergrund ist dass alle Personen die länger als 10 Jahre nicht mehr für das Unternehmen tätig waren, herausgefiltert werden. (zum Löschen)
Datenschutz lässt grüßen.
Titel: Re: SQL Abfrage Filtern
Beitrag von: Beaker s.a. am Mai 16, 2025, 12:59:27
ungetestet aus der hohlen Hand
SELECT T.PersID, Max(T.AeDatum) AS LetzteAe
FROM Tabelle As T
WHERE T.AeDatum Is Not NULL
GROUP BY T.PersID
Und nochmal, - nimm ein richtiges Datumsfeld!

gruss ekkehard
Titel: Re: SQL Abfrage Filtern
Beitrag von: Bernd Sowa am Mai 16, 2025, 15:14:45
Hallo Eckehard,
danke für die Antwort. Werde ich so schnell wie möglich testen.

Es ist übrigens ein richtiges Datumsfeld.
Ich habe nur für das Beispiel Jahreszahlen verwendet.

Ich wünsche ein schönes Wochenende...
Titel: Re: SQL Abfrage Filtern
Beitrag von: Knobbi38 am Mai 16, 2025, 15:29:01
Zitat... wenn ich die leeren einfach rausfilter bekomme ich die Datensätze mit der gleichen Person die ein Änderungsdatum haben trotzdem angezeigt.
...
Ich dachte, ich hätte es oben verständlich dargestellt.
Woher soll ein Außenstehender wissen, mit welchem SQL-Statement du da etwas rausfilters? Verständlich ist etwas anderes und so können Helfende nur Vermutungen anstellen.

Titel: Re: SQL Abfrage Filtern
Beitrag von: Bernd Sowa am Mai 19, 2025, 13:59:26
@ Eckehard:
Deine Lösung hat funktioniert. Danke sehr.