【发布时间】:2016-11-18 12:57:05
【问题描述】:
我在存储过程中有以下代码:
DECLARE done INT DEFAULT FALSE;
declare v_degree int(11);
declare v_start_age smallint(6);
declare v_end_age smallint(6);
declare v_gender varchar(20);
declare v_calctable varchar(200);
SELECT calculationtable into v_calctable FROM wac.degrees where tablename = concat("cdb_" + arg_tablename);
declare cur CURSOR for select degree, start_age, end_age, belt, gender from v_calctable;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
像这样,我将在“将计算表选择到 v_calctable FROM wac.degrees where tablename = concat("cdb_" + arg_tablename);”行中出现语法错误
如果我将它放在“Declare cursor”之后,则没有语法错误,但我需要将结果用于 de Cursor select 语句。
我怎样才能做到这一点?
谢谢。
【问题讨论】:
-
你可能需要的只是一个 JOIN 而不是一个存储过程