我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql 把某一列字段按照逗号分割

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql 把某一列字段按照逗号分割

SELECT auth FROM `sys_user` WHERE user_id ='137'

 

SELECT DISTINCT(substring_index( substring_index( a.col, ',', b.help_topic_id + 1 ), ',',- 1 )) FROM( SELECT auth col FROM `sys_user` WHERE user_id = '137' ) AS aJOIN mysql.help_topic AS b ON b.help_topic_id <(char_length( a.col ) - char_length(REPLACE ( a.col, ',', '' ))+ 1 )

 

该查询语句的目的是从sys_user表的auth列中将数据按逗号拆分成多行,并返回其中不重复的值。

首先,它使用子查询(SELECT auth col FROM sys_user WHERE user_id = '137') AS a来获取sys_user表中user_id为'137'的记录的auth列,并将其命名为col

然后,它通过连接mysql.help_topic表(这是MySQL系统表,用于提供帮助主题的信息)来生成一个辅助表b,其中help_topic_id小于(char_length(a.col) - char_length(REPLACE(a.col, ',', '')) + 1)。这个表用来生成适当的行数,以便将col的值按逗号分割成多行。通过将help_topic_id的值递增,substring_index函数可以使用它来找到逗号分割后的每个值。

最后,通过使用substring_index(substring_index(a.col, ',', b.help_topic_id + 1), ',', -1)函数,将col列中的值按逗号分割出来,并仅选取分割后的最后一个值。这样就可以得到不重复的值,因为DISTINCT关键字被应用在最终的查询结果上。

总之,这个查询语句的目的是将sys_user表中指定user_id的记录的auth列按逗号拆分成多行,并返回其中不重复的值。

 

来源地址:https://blog.csdn.net/yuzheh521/article/details/131399619

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mysql 把某一列字段按照逗号分割

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql如何将一个列按逗号分割为多列

目录mysql将一个列按逗号分割为多列假设有一个表my_table下面的例子请注意总结mysql将一个列按逗号分割为多列在MySQL中,将一个列按逗号分割为多列通常需要使用字符串函数,如SUBSTRING_INDEX(),配合UNION
mysql如何将一个列按逗号分割为多列
2024-09-20

Linux awk将文件某列按照逗号分隔的例子

概述 当我们在处理线上故障的时候,经常会从数据库表查询出某个列。select product_id from order where user_id = 111;查询出来的结果形式如下:1
2022-06-04

mysql把查询结果按逗号分割的实现示例

目录步骤一:使用GROUP_CONCAT函数示例注意事项语法示例注意事项在实际的数据库查询中,有时候我们需要将查询结果按逗号分割成一个字符串,以便于在应用程序中进一步处理或展示。本文将介绍如何使用mysql数据库来实现将查询结果按逗号分割的
mysql把查询结果按逗号分割的实现示例
2024-09-24

[开发|java] 将一个Java字符串按逗号分割成一个列表(List)

可以使用Java的split()方法将字符串分割成字符串数组,然后将数组转换为列表。以下是一个示例代码: import java.util.Arrays;import java.util.List;public class Main {
2023-08-16

怎么在Linux中使用awk命令将文件某列按照逗号分隔

这期内容当中小编将会给大家带来有关怎么在Linux中使用awk命令将文件某列按照逗号分隔,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。概述当我们在处理线上故障的时候,经常会从数据库表查询出某个列。sele
2023-06-09

MYSQL: sql中某一个字段内容为用逗号分割的字符串转换成多条数据(适用于部分树机构)

1.创建表的示例 CREATE TABLE tbl_name( id int(11) not null auto_increment, userName varchar(100) not null,
2023-08-17

MySQL将一个字段中以逗号分隔的取出来形成新的字段实现

1例如:要把如图1的字段拆分图2select account_id,substring_index(substring_index(a.related_shop_ids,',',b.help_topic_id+1),',',-1) shop
2022-05-15

利用FOR XML PATH行转列(根据某字段分组,多行数据转成一行,并用逗号隔开)

CREATE TABLE #TEST(A VARCHAR(10) NULL,B VARCHAR(MAX) NULL)INSERT INTO #TESTSELECT "A","A001"UNION ALLSELECT "A","A002"UNION ALLSEL
利用FOR XML PATH行转列(根据某字段分组,多行数据转成一行,并用逗号隔开)
2018-05-13

编程热搜

目录