Da lfd+1 ja lfd einschliesst, sollte es doch einfach so funktionieren ( in
FB PSQL)
SQL-Code:
SET TERM ^^ ;
CREATE PROCEDURE SUMMWERTE returns (
LFD BigInt,
WERT Double Precision,
WERTSUM Double Precision) AS
BEGIN
SUSPEND;
END ^^
SET TERM ; ^^
SET TERM ^^ ;
ALTER PROCEDURE SUMMWERTE returns (
LFD BigInt,
WERT Double Precision,
WERTSUM Double Precision) AS
declare w double precision;
begin
wertsum = 0;
w = 0;
for select
lfd, wert from STAMM order by lfd into :lfd, :wert do
begin
for select wert from WERT where lfd = :lfd into :w do
begin
wertsum = :wertsum + :w;
end
suspend;
end
end ^^
SET TERM ; ^^
Mit einer einfachen Testdatenbak scheint es zu funktionieren.