mysql 在存储过程里的游标的表名能不能是变量啊?
DECLAREt1VARCHAR(20)default'users';DECLAREordernumbersCURSORFORSELECTuserid,passwordf...
DECLARE t1 VARCHAR(20) default 'users';
DECLARE ordernumbers CURSOR FOR SELECT userid, password from t1;
用mysql的人应该都看的懂这两条语句吧,我这样写可以嘛?mysql5.0支持吗?
我自己知道答案了,多谢大家的帮助。我的方法也跟朋友们分享。
可以先用预处理的方式建立一个临时表或者视图,然后将游标声明到临时表或者视图上,这样就可以实现游标的表名是变量了。另外,建议大家用临时表。因为在这个存储过程中建立的视图对其他过程是没有用的,还可能产生冲突,所有用session级的temporary table还是很明智的。 展开
DECLARE ordernumbers CURSOR FOR SELECT userid, password from t1;
用mysql的人应该都看的懂这两条语句吧,我这样写可以嘛?mysql5.0支持吗?
我自己知道答案了,多谢大家的帮助。我的方法也跟朋友们分享。
可以先用预处理的方式建立一个临时表或者视图,然后将游标声明到临时表或者视图上,这样就可以实现游标的表名是变量了。另外,建议大家用临时表。因为在这个存储过程中建立的视图对其他过程是没有用的,还可能产生冲突,所有用session级的temporary table还是很明智的。 展开
展开全部
如果表三已经存在,则
insert into 表三(存款银行,存款金额,支付银行,支付金额)
select 表一.存款银行,表一.存款金额,表二.支付银行,表二.支付金额
from 表一,表二
where 表一.存款银行=表二.支付银行
insert into 表三(存款银行,存款金额,支付银行,支付金额)
select 表一.存款银行,表一.存款金额,表二.支付银行,表二.支付金额
from 表一,表二
where 表一.存款银行=表二.支付银行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询