gpt4 book ai didi

mysql - 使用mysql在另一个字段中拆分和求和的数据库更新查询

转载 作者:行者123 更新时间:2023-11-29 05:23:01 26 4
gpt4 key购买 nike

我有一张 table

test
ID text sum
-----------------------
1 1_2_3 0

2 2_3_4_5 0

我想把这个表更新为

ID       text       sum
------------------------
1 1_2_3 6

2 2_3_4_5 14

如何编写查询或函数/过程。

最佳答案

你真的应该规范化你的数据,但假设你被迫使用它:

UPDATE tableName SET sum=SUBSTRING_INDEX(text,'_',1) +
SUBSTRING_INDEX(SUBSTRING_INDEX(CONCAT(text,'_0'),'_',2),'_',-1) +
SUBSTRING_INDEX(SUBSTRING_INDEX(CONCAT(text,'_0'),'_',3),'_',-1) +
SUBSTRING_INDEX(SUBSTRING_INDEX(CONCAT(text,'_0'),'_',4),'_',-1) +
SUBSTRING_INDEX(SUBSTRING_INDEX(CONCAT(text,'_0'),'_',5),'_',-1);

使用 SUBSTRING _INDEX 来隔离每个数字,如果表达式的数量大于值的数量,则使用 CONCAT 给出 0。

The fiddle

关于mysql - 使用mysql在另一个字段中拆分和求和的数据库更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23381744/

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