mysql 存储过程中创建临时表 查询临时表问题
select temp1.aa ,temp2.bb from ( select tt.id ,tt.a as aa from temp as tt ) as temp1 left join ( select te.id,te.b as bb from temp as te ) as temp2 on temp1.id = temp2.id执行到最后
Procedure execution failed
1137 - Can't reopen table: 'tt'这是为什?高手指点一下
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
回复
我是创建普通的表,create table。视图也是没有索引的,我感觉不好用。 存储过程调用存储过程我没写过。我估计是这样。 set @result=exec procedure(@val),具体还要看mysql文档了
mysql中存储过程调用另一个存储过程如何写啊?
你是创建视图吗??使用时查询视图??
存储过程里面的临时表可以用无数次。
回复
是吗??可有案例啊??我的为什么联合查询同一张表时报这个错误啊??
回复
存储过程里面,只要临时表没有被drop 之前,想怎么用就怎么用。
回复
光说没有用啊!!!给个案例
回复
在同一个query语句中,你只能查找一次临时表。例如:下面的就不可用 mysql> SELECT * FROM temp_table, temp_table AS t2; ERROR 1137: Can't reopen table: 'temp_table'
临时表只能引用一次
on
temp1.id = te.id 好像是这里不对吧