create function sf_get_empsallist(dname varchar(100))
returns varchar(300)
begin
declare emplist varchar(300) default '';
declare flag int default 0 ;
declare name varchar(100);
declare sal int;
declare c1 cursor for
select ename,salary from emp join dept
on emp.deptid=dept.deptid
where deptname=dname;
declare continue handler for not found set flag=1;
open c1;
myloop: loop
fetch c1 into name,sal;
if flag=1 then
leave myloop;
end if;
set emplist=concat(emplist,',',name,'-',sal);
end loop;
return(substr(emplist,2));
close c1;
end
$$
我得到的错误是
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right
syntax to use near '' at line 4
我尽力把它解决了,但找不到。
1条答案
按热度按时间iklwldmw1#