[英]SQL query with in clause and get data with subsequent order according to name column
[英]Dynamic SQL query - > row data to column name
我对动态SQL查询/行数据到列名有一点/很大的问题。 我有此链接: http : //sqlfiddle.com/#!9/b4478/1
但是,如果我添加的数据更多,查询将无法正常工作。 我收到错误消息:
You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near 'FROM test
GROUP BY nid' at line 2
我的数据库目前很大。 在接下来的几天里,我将创建一个空数据库。 我添加到名称(另一个表,将ID连接到“ nid”),日期(基准),金额(osszeg)。 一周到一周的数据太多(也许但是一次太多,然后无法运行查询)
而且我需要此查询的简单/单个PHP查询代码。
感谢您的帮助,对不起我的英语不好。 很感谢!
没有看到实际的SQL语句,我们只是在猜测。 但是我怀疑您正在遇到GROUP_CONCAT
函数的已记录行为,该函数返回由MySQL变量GROUP_CONCAT_MAX_LEN
指定的最大长度的字符串。 默认值为1024字节。
参考: https : //dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_group_concat_max_len
SET group_concat_max_len = 1024;
为了进行调试,您可以让MySQL存储程序发出@sql
的内容,而不是尝试对其进行准备,例如
SELECT @sql;
您可能需要考虑比较从GROUP_CONCAT
函数返回的字符串的长度(以字节为单位),该长度不等于最大长度GROUP_CONCAT_MAX_LEN
,以检查该值是否已被截断。
另一方面,我选择将此结果作为一组行而不是作为单个行上的列返回。 而且,我会做任何所需的翻译以显示在客户端,而不是在数据库中进行翻译。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.