创建的MySQL视图具有较低的列长度

时间:2015-02-22 20:32:47

标签: mysql

我创建了一个视图,其列的值长度超过1500个字符。但是在创建视图时,列长度为343个字符。

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost`
SQL SECURITY INVOKER
VIEW `table_view` AS
    select
        concat("[",
            group_concat(
                concat(
                    '{"column1":"',`column1`,
                    '","column2":"',`column2`,
                    '","column3":"',`column3`,
                    '","column4":"',`column4`,
                    '","column5":"',`column5`,'"}'
                )
            ),
            "]"
        ) as `Big_column`
    from `Table`;

是否有可能在创建的视图中增加它?

1 个答案:

答案 0 :(得分:1)

GROUP_CONCAT()函数的最大结果长度由名为group_concat_max_len的系统变量控制。您可以阅读here

您可以使用

调整其长度
SET group_concat_max_len = 2048

或类似的命令。尝试为该变量添加更大的值。

但是您的视图会尝试将您表中的所有行打包到一列中。这看起来很奇怪。