我是存储过程的新手,我不知道如何做到这一点 - 我有一组复杂的mysql命令,创建临时表,连接等。它们在现有表上运行,并且有很多可能的集合现有表格,我可能想要这样做。作为一个简单的例子,我可能想说“select * from t1 join t2”,但我想要一个接受各种t1和t2作为参数的过程。显然存储过程不接受表作为参数,所以我想知道这样做的方法是什么。谢谢你的帮助。
答案 0 :(得分:1)
您可以使用这样的预备语句:
set @query = concat("select * from ", table_name_param1,
" t1 left join ", table_name_param2, " t2 on t1.id = t2.id" );
prepare s from @query;
execute s;