2014-10-01 24 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 
相關問題