Hi,
Ich hab mal wieder ein kleines
SQL-Problemchen.
Ich habe ein DBgrid, in dem alle bearbeiteten Aufträge von einem Tag angezeigt werden sollen.
Es wird bei jeder Statusänderung in einem Auftrag automatisch ein neuer Datensatz in einer Statistiktabelle angelegt, der Auftragsnummer, Status, Datum und Urzeit beinhaltet.
Es kann also sein, das von einem Auftrag mehrere Einträge an einem Tag stammen.
In dem Grid soll jetzt aber nur der Letzte Eintrag jedes Auftrages an diesem Tag erscheinen.
Ich hab dafür folgenden Code:
Delphi-Quellcode:
with frmdata.qubearbeitet
do
begin
sql.Clear;
sql.Add('
SELECT DISTINCT(auftrag), status, datum, zeit FROM statistik WHERE datum = ''
'+formatdatetime('
yyyy-mm-dd',dtpbearbeitet.date)+'
''
AND techniker = "'+config.ReadString('
Grundeinstellungen','
Technikernummer','
0')+'
";');
open;
end;
Allerdings zeigt er mir trotz DISTINCT alle Datensätze an. - Sicher weil ja kein Datensatz wirklich doppelt ist stimmts?
Aber wie kann ich das anders lösen.