存储过程中的动态MYSQL查询

时间:2012-08-30 09:45:30

标签: mysql

  

SELECT @ query1:= GROUP_CONCAT(CONCAT('SELECT * FROM asterisk。',   TABLE_NAME)                                  SEPARATOR'UNION ALL')来自Information_Schema.tables的CUSTOMQUERY WHERE table_name LIKE'%custom%';   PREPARE stmt FROM @ query1;执行stmt; DEALLOCATE PREPARE stmt;

     

..但在结果的最后我们得到了缺少的查询   喜欢SELECT * FROM   asterisk.custom_70003 UNION ALL SELECT * FROM asterisk.custom_70006   UNION ALL SELECT * FROM asterisk.custom_70007 UNION ALL SELECT * FROM   asterisk.custom_70010 UNION ALL SELECT * FROM asterisk.custom_70011   UNION ALL SELECT * FROM asterisk.custom_70042 UNION ALL SELECT * FROM   asterisk.custom_70043 UNION ALL SELECT * FRO ..

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“FRO”附近使用正确的语法

所以它给了我错误

  

..我想在我的SSRS报告和ssrs querybuilder提示符中使用它   我参数..所以如果我们在程序中使用它将是有益的   对我来说。因为这样我可以在我的报告中轻松访问它。

1 个答案:

答案 0 :(得分:0)

您应该增加group_concat_max_len值。

从文档中:group_concat_max_len是GROUP_CONCAT()函数允许的最大结果长度(以字节为单位)。默认值为1024.