Mysql 如何从逗号分隔的字符串列表中查找部分字符串,然后需要从值列表中删除整个字符串

Mysql 如何从逗号分隔的字符串列表中查找部分字符串,然后需要从值列表中删除整个字符串,mysql,Mysql,在Mysql查询中,我们需要从逗号分隔的字符串列表中查找部分字符串。然后需要从逗号分隔的列表中删除已找到的字符串 根据下面的示例,我们需要找到一个以“Pending”开头的字符串,然后需要通过Mysql查询从逗号分隔的列表中删除找到的字符串 |-------------------|-----------------------------------------| | Id | Tag | |

在Mysql查询中,我们需要从逗号分隔的字符串列表中查找部分字符串。然后需要从逗号分隔的列表中删除已找到的字符串

根据下面的示例,我们需要找到一个以“Pending”开头的字符串,然后需要通过Mysql查询从逗号分隔的列表中删除找到的字符串

|-------------------|-----------------------------------------|
|         Id        |     Tag                                 |
|-------------------|-----------------------------------------|
|        1          |      Completed, #4CHD, Pending with ABC |
|-------------------|-----------------------------------------|
|        2          |      Open, Pending with Mrg, #4CHD      |
|-------------------|-----------------------------------------|    
|        3          |      Pending with cons, Resolved        |
|-------------------|-----------------------------------------|
输出应为:

|-------------------|-----------------------|
|         Id        |     Tag               |
|-------------------|-----------------------|
|        1          |      Completed, #4CHD |
|-------------------|-----------------------|
|        2          |      Open, #4CHD      |
|-------------------|-----------------------|
|        3          |      Resolved         |
|-------------------|-----------------------|
对于MySQL 8+

选择test.id,GROUP_CONCAT(TRIM(jsontable.value))标记
从测试
交叉连接JSON_表(CONCAT(“[”,REPLACE(test.Tag)”,“,”,“,”),“”),
“$[*]”列(值VARCHAR(255)路径“$”)
)易懂的
其中TRIM(jsontable.value)与CONCAT不同(@criteria,“%”)
按test.id分组
对于MySQL 5.x

选择test.id,
组CONCAT(TRIM(子字符串索引(test.Tag,,,,nums.num),,,,,,,-1))标记
从测试
联接(选择1个联合选择2个联合选择3个联合选择4个联合选择5个)num

在5.x版本的nums.num@Mihai上,需要使用静态/合成数字表和double
SUBSTRING\u INDEX()
@Akina解析CSV,此处MySQL安装的版本低于8.0。我面临以下错误:错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解使用near'(CONCAT(“[”,REPLACE(tik.Tag),“,”,“,”),“““]”的正确语法,“$[*]“”在第行8@RamsethuMySQL安装版本低于8.0添加到问题精确服务器版本中。还指定每个
标记
值的最大独立值金额。@Ramsethu已更新。根据需要调整
nums
。@Akina这很好。非常感谢您的帮助。我面临一个小问题。不应忽略任何行输出。假设第三行的标记值仅为“Pending with cons”。在这种情况下,前两行显示在输出中,第三行被忽略。我的要求是第三行也应显示空标记。请查看url: