MySQL存储过程select中为变量赋值

注:查询可以使用游标获取单个或一组数据,但有时候返回值就只有一个,那么我们通常使用查询(SELECT ...INTO ...FROM )赋值方法.
原始SQL语句:
DROP  PROCEDURE IF EXISTS wmscloud_test.test_select;

CREATE PROCEDURE wmscloud_test.test_select()

BEGIN

DECLARE v_role_id INT(11);
DECLARE v_role_name VARCHAR(30);

SELECT es_role_id, es_role_name INTO v_role_id, v_role_name FROM es_role WHERE es_role_id=20;

SET @roleId=v_role_id;

IF @roleId>0 THEN 

   SELECT v_role_id,v_role_name;

END IF;

END;


存储过程:
BEGIN

DECLARE v_role_id INT(11);

DECLARE v_role_name VARCHAR(30);

SELECT es_role_id, es_role_name INTO v_role_id, v_role_name FROM es_role WHERE es_role_id=20;

SET @roleId=v_role_id;

IF @roleId>0 THEN 

   SELECT v_role_id,v_role_name;

END IF;

END

查询结果如图:



猜你喜欢

转载自boonya.iteye.com/blog/2267406