2014-10-01 91 views
0

我需要使用另一列中某些字符的数量来更新数据库中的列。具体而言,我需要SQL把这个:在MySQL中,我可以根据另一列中某些字符的数量更新一个值吗?

Col1 | Col2 
1/2/3 | 0 
1/3  | 0 
1/2/3/2 | 0 
1  | 0 

进入这个:

Col1 | Col2 
1/2/3 | 2 
1/3  | 1 
1/2/3/2 | 3 
1  | 0 

这可能吗?因为它应该是可能的。

我一直在四处寻找,我发现所有我发现的正则表达式不支持在MySQL中,我真的需要直接做这个,而不是使用其他语言(所以,例如,一个简单的PHP脚本这对我来说是行不通的)。

+2

是它了可能。 – Mihai 2014-10-01 10:18:56

回答

1
UPDATE your_table 
SET Col2 = CHAR_LENGTH(Col1) - CHAR_LENGTH(REPLACE(Col1, '/', '')); 
2
UPDATE t SET col2=select (length(col1) - length(replace(col1, '/',''))) FROM t 
相关问题