2011-10-06 622 views

回答

1

基本上你想要做在MySQL像PHP的preg_replace('/ +/', ' ', $sString)正則表達式替換 - 不幸的是,這是沒有內置到MySQL所以你需要一個用戶定義的函數......這使我這個:How to do a regular expression replace in MySQL?

希望幫助...

2
DELIMITER $$ 

CREATE PROCEDURE I_hate_duplicate_spaces 
BEGIN 
    DECLARE rows_affected INTEGER; 

    REPEAT 
    UPDATE table1 SET afield = REPLACE(afield,' ',' '); 
    SELECT ROW_COUNT() INTO rows_affected; 
    UNTIL rows_affected = 0 END REPEAT; 
END $$ 

DELIMITER ; 

現在啓動存儲過程:

CALL I_hate_duplicate_spaces; 

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace
http://dev.mysql.com/doc/refman/5.0/en/information-functions.html

+0

+1但您忘記了過程名後面的()。 :P – getWeberForStackExchange

相關問題