gpt4 book ai didi

mysql - 获取mysql中两个逗号分隔值之间的差异

转载 作者:行者123 更新时间:2023-11-29 10:08:36 25 4
gpt4 key购买 nike

需要获取两个逗号分隔字符串之间的差异,请参阅下面的示例以更好地理解。

String 1: 1,2,3,4
String 2: 1,4 or
String 2: 2,3 or
String 2: 3,1 etc..

现在我需要得到两个字符串之间的差异的结果,例如

Example 1:

String 1: 1,2,3,4
String 2: 1,4

Required Output: 2,3

Example 2:

String 1: 1,2,3,4
String 2: 2,3

Required Output: 1,4

您能帮我如何在 MySQL 查询、过程或函数中执行此操作吗?

最佳答案

如果你总是只使用两个指定的字符串,那么试试这个

Select group_concat(x.c)
From
(
Select substring('1,2,3,4', (r * 2) -1 , 1) as c
From (
Select @curRow := @curRow + 1 as r
from sometable JOIN (SELECT @curRow := 0) r
WHERE @curRow< (length('1,2,3,4') - length(replace('1,2,3,4', ',', '')))+1
) a
) x
Where x.c not in (Select substring('1,4', (r * 2) -1 , 1) as c
From (
Select @curRow := @curRow + 1 as r
from sometable
JOIN (SELECT @curRow := 0) r
WHERE @curRow< (length('1,4') - length(replace('1,4', ',', '')))+1
) a)

注意:如果要比较两个以上的字符串,请将此查询放入函数中并传递两个字符串参数并将这些参数应用于此查询

关于mysql - 获取mysql中两个逗号分隔值之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51415735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com