我刚开始学习如何在MYSQL中编写存储过程,我遇到了障碍。
我写了以下代码:
DELIMITER $$
DROP PROCEDURE IF EXISTS `emscribedx`.`countcodes` $$
CREATE PROCEDURE `emscribedx`.`countcodes` ()
BEGIN
declare doneprocessing int default 0;
declare thisaccount varchar(50);
declare countcursor cursor for select acct from patientid where patienttype='P';
declare continue handler for not found
set doneprocessing = 1;
Fetch countcursor into thisaccount;
Repeat
select * from doc_table where acct = thisaccount;
until doneprocessing = 1
END repeat;
close countcursor;
END $$
DELIMITER ;
我想显示在repeat语句之后发生的select语句的结果。但是我该怎么做?当我执行存储过程时,没有任何反应?
谢谢,
埃利奥特
答案 0 :(得分:0)
该过程只能返回单个查询的结果,为什么不使用它呢?
SELECT doc_table.*
FROM doc_table
INNER JOIN patientid
ON patientid.acct = doc_tableacct
WHERE patientid.patienttype='P';
如果你愿意,可以把它放在一个程序里面。