mysql 逗号拆分_MySQL字符串的合并及拆分

本文介绍了MySQL中如何按照指定字符进行字符串合并和拆分。通过`GROUP_CONCAT`函数实现逗号合并,但要注意合并长度限制,可通过调整`group_concat_max_len`参数解决。对于字符串拆分,由于MySQL缺乏内置函数,需要借助`mysql.help_topic`表辅助实现。文中提供了实例演示这些操作,并提醒读者实践的重要性。
摘要由CSDN通过智能技术生成

按照指定字符进行合并或拆分是经常碰到的场景,MySQL在合并的写法上比较简单,但是按指定字符拆分相对比较麻烦一点(也就是要多写一些字符)。本文将举例演示如何进行按照指定字符合并及拆分。

01

   合并 

MySQL数据库中按照指定字符合并可以直接用group_concat来实现。

创建测试表

mysql> create table  tb_group(id int auto_increment primary key ,col1 varchar(20));Query OK, 0 rows affected (0.01 sec)

插入测试数据

mysql> insert into  tb_group(col1) values('a'),('c'),('dddd'),('ewdw'),('vxgdh');;Query OK, 5 rows affected (0.01 sec)Records: 5  Duplicates: 0  Warnings: 0

合并col1字段的内容

默认是按照逗号进行合并的,例如:

mysql> select group_concat(col1) from tb_group;+---------------------+| group_concat(col1)  |+---------------------+| a,c,dddd,ewdw,vxgdh |+---------------------+1 row in set (0.01 sec)

指定分隔符合并,例如指定使用 ||  符号进行合并

mysql> select group_concat(col1,'||') from tb_group;+-------------------------------+| group_concat(col1,'||')       |+-------------------------------+| a||,c||,dddd||,ewdw||,vxgdh|| |+-------------------------------+1 row in set (0.00 sec)

注意

默认情况下,合并后的长度不能超过1024,否则结果会被截断

例如,我再写个脚本插入一些数据

#  使用shell脚本来实现vim  test_insert.sh#   添加如下内容#!/bin/bash# gjcfor i in  {1..1025}do    mysql -uroot -p'123456' --socket=/data/mysql3306/tmp/mysql.sock  -e "insert into testdb.tb_group1(col1)values('a') "done#  运行脚本插入数据sh test_insert.sh
mysql> select  count(*)from tb_group;+----------+| count(*) |+----------+|     1030 |+---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值