华域联盟 MySQL 如何对mysql表字段进行整理

如何对mysql表字段进行整理

如何对mysql表字段进行整理

发布时间:2010-05-11 08:58
来源:未知 我要投稿

以下的文章主要介绍的是如何正确对mysql表字段进行整理,该篇文章是以一问一答的方式来说明其实际操作的具体步骤,这样就会让你更深入的了解,以下就是文章的具体内容阐述,希望你浏览之后会有所收获。

表dz_tupian

当前表的数据

mysql表字段 phid adress

001 whai  002 fdsadf  003 fdsfsdaf  002 dfewads  003 fwerasere  001 hfghgrtt  ... ... 

想要实现的效果:

字段 phid adress

001 whai hfghgrtt  002 fdsadf dfewads  003 fdsfsdaf fwerasere 

phid里有很多相同的数字 先找出重复的 (可能有一个 或者60个)

然后将重复的行 整合为一行---- phid相同的行 第二个mysql表字段adress依次

添加到新整合的一行的adress字段里

这是我的思路 不知如何写代码

问题补充:第二个方法挺好 在mysql数据库里 查询 然后把查询的结果导出 就可以得到我要的效果

但有个问题 表dz_tupian 字段adress 类型是mediumtext mediumtext最大长度是16777215个字符。

为何导出的查询结果adress最后不完整 有残缺 看得出来相同phid的adress值没有完全添加到adress字段里

这是为什么

问题好像不是adress字段 字符的数量限制 可是查询的结果确实是如果相同phid的数量多的话 对应的adress也就多 就出现最后不完整 少的 就可以完整的显示出来

刚查过 adress字段 最多的是533个字符 可是mysql表字段adress 类型是mediumtext mediumtext最大长度是16777215个字符 这就是不完整的原因 为什么????

级最佳答案补充回答:

group_concat函数有大小限制,缺省是1024,你可以根据自己的要求修改这个大小,有两种方法

1.在mysql配置文件中加上

group_concat_max_len = 102400 #你要的最大长度

2.可以简单一点,执行语句:

 SET GLOBAL group_concat_max_len=102400;  Query OK, 0 rows affected (0.01 sec) 

具体的可以看参考资料的连接

mysql可以使用group_concat函数了,以下语句在mysql5中测试通过

select phid,group_concat(adress order by adress separator " ") as adress  from dz_tupian  group by phid 

上面说了这么多内容,是关于对整合mysql表字段的介绍,不知道各位对MySQL的认识是不是更上一层楼了,时时关注ITJS,学习最新Mysql技术。

本文由 华域联盟 原创撰写:华域联盟 » 如何对mysql表字段进行整理

转载请保留出处和原文链接:https://www.cnhackhy.com/3162.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部