只是想了解“EXECUTE SQLStmt”会运行多少次,考虑到 DISTINCT Col 返回 5 行,而 COUNT(*) 返回 10 行。
DECLARE c1 Cursor with return for
SELECT Distinct Col as LIB FROM Page.Libraries
ORDER BY Col;
SET numrecs = 0;
SET numcount = 1;
SET c_LIB = ' ';
SELECT COUNT(*) INTO numrecs FROM Page.Libraries;
OPEN c1;
WHILE numcount <= numrecs DO
P2 : BEGIN
FETCH c1 INTO c_LIB;
SQLStmt = 'insert statement' || c_LIB
EXECUTE IMMEDIATE SQLStmt;
SET numcount = numcount + 1;
END P2;
END WHILE;
我熟悉 SQL Server,但对 Db2 语法感到困惑。