Пример: CREATE TABLE A (ID INTEGER NOT NULL PRIMARY KEY);
INSERT INTO A VALUES (1); INSERT INTO A VALUES (2); INSERT INTO A VALUES (3); CREATE TABLE B( ID INTEGER NOT NULL PRIMARY KEY, FK INTEGER REFERENCES A (ID), S INTEGER); INSERT INTO B VALUES (1, 1, 1); INSERT INTO B VALUES (2, 1, 1); INSERT INTO B VALUES (3, 2, 1); INSERT INTO B VALUES (4, 3, 1); CREATE PROCEDURE P (ID INTEGER) RETURNS (KEY INTEGER, S INTEGER) AS BEGIN KEY = :ID; SELECT SUM(S) FROM B WHERE FK = :ID INTO :S; SUSPEND; END При выполнении запроса: SELECT A.ID, P.S FROM A A JOIN P(A.ID) ON A.ID = P.KEY Получаем ошибку: no current record for fetch operation SQLCode: -508; GDSCode: 335544348 Если JOIN заменить на LEFT JOIN то все выполнится нормально. Что это?