gpt4 book ai didi

mysql - 如何从列的逗号分隔值中找到子部分并插入mysql中的新行?

转载 作者:行者123 更新时间:2023-11-29 16:03:47 26 4
gpt4 key购买 nike

问题:

在数据库表中,一列有几个逗号分隔的值,想要通过mysql查询找到该字符串并插入到新行中。

表结构示例:

| id    value        || 1     abcd         || 2     xyz,123,abcd |

输出将为

| id   value || 1     abcd || 2     xyz  || 3     123  || 4     abcd |

注意:id是自动递增的。 MySQL版本5.7不知道如何做到这一点。

提前致谢。

最佳答案

您可以构建一个查询来返回数字。

SELECT 1 AS a UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9 UNION SELECT 0

您可以多次将其与自身连接起来,以返回更大范围的数字。

然后,您可以将结果与第一个表连接起来,并将该数字与 SUBSTRING_INDEX 一起使用,查找逗号和前一个逗号。然后将该值插入到第二个表中。

做了几次。

注意事项:-

您的号码范围足够。

最后一个值可能会重复。您可以使用 DISTINCT 排除它,或者将数字与初始字符串包含的逗号数量进行比较

关于mysql - 如何从列的逗号分隔值中找到子部分并插入mysql中的新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55935311/

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