SQL0811N
From SQL PL Guide for DB2
SQL0811N The result of a scalar fullselect, SELECT INTO statement, or VALUES INTO statement is more than one row
In your result set of your scalar fullselect, SELECT INTO statement, or VALUES INTO statement you've multiple rows, but there was just one expected. Typically you will get this error code in SQL PL by setting a variable:
create procedure myproc (out var01 integer) begin set var01 = (select col1 from mytab); -- result can be one or multiple rows!!!! end!
You've change your statement that your result set will be just one row. For example:
create procedure myproc (out var01 integer) begin set var01 = (select col1 from mytab fetch first 1 rows only); end!
or
create procedure myproc (out var01 integer) begin set var01 = (select max(col1) from mytab); end!