Moin,
würde das noch anders angehen. Eigentlich brauchst Du einen Marker,
wann der Artikel gewechselt wird. Am besten wäre das schon beim
Eintragen in der Datenbank. Oder aber man läßt eine Procedure laufen.
Delphi-Quellcode:
CREATE PROCEDURE GET_GRP_NO RETURNS
(
GROUP_NO INTEGER,
Datum DATE,
Zeit TIME1
Artikel VARCHAR(10)
) AS
DECLARE VARIABLE iCOUNT INTEGER;
DECLARE VARIABLE iARTIKEL CHAR(10);
BEGIN
iCOUNT = 0;
iARTIKEL = "";
FOR SELECT Datum, Zeit, Artikel
FROM Tabelle
INTO :Datum, :Zeit, :Artikel
DO
BEGIN
if iARTIKEL <> Artikel
THEN iCOUNT = iCOUNT + 1
;
GROUP_NO = iCOUNT;
iARTIKEL = Artikel
SUSPEND;
END
END
^
Danach kann man dann eine
SQL auf die GROUP_NO gruppieren:
Delphi-Quellcode:
SELECT DISTINCT ARTIKEL,
COUNT (Artikel),
MIX (TIME),
MAN (TIME),
FROM Tabelle
GROUP BY GROUP_NO
ORDER BY GROUP_NO
Grüße