更新一個字段,在它的後面加一個字符串,不查詢數據庫得到這個字段值 怎麼添加?? 例如: 我的test表,有個user字段,我現在想在它後面加了另一個用戶的名字 我在mysql數據庫這樣寫 UPDATE test SET user= user+ ',phpchina' WHERE id= '2'; 這樣是不對的,mysql數據庫把它當成數字相加了,user字段值變成0了。 應該: UPDATE test SET user= CONCAT(user,',phpchina') WHERE id= '2';
MySQL批量替換指定字段字符串語句
UPDATE 數據表名 SET 字段名 = replace(字段名, '要替換的字符串', '替換為') WHERE 設定條件;
例子
代碼如下 復制代碼UPDATE `cdb_name` SET `field_name` = replace (`field_name`,'from_str','to_str')
說明:
cdb_name —— 該字符或字符串所在表的名字
field_name —— 該字符或字符串所在字段的字段名
from_str —— 需要替換的字符串
to_str —— 替換成的字符串
例如:
進入phpmyadmin,打開要操作的數據庫,點擊上方的sql,執行以下sql語句:(這裡我使用的Discuz做演示)
代碼如下 復制代碼UPDATE `pre_forum_post` SET `author` = replace( `author` , '祥磊部落', '祥磊' )
意思是把用戶名“祥磊部落”修改為“祥磊”,其中pre_要修改為您自己數據庫的表前綴。
代碼如下 復制代碼UPDATE phpcms_article SET title=REPLACE(title,'[2009]','〔2009〕');
UPDATE phpcms_article SET content=REPLACE(content,'[2009]','〔2009〕');
語句中還可以加入替換條件,如只替換限定ID小於200的內容:
代碼如下 復制代碼UPDATE wp_posts SET post_content = replace(post_content, '搜索引擎優化', '搜索引擎營銷') WHERE ID < 200;
後面附一個高級點的
代碼如下 復制代碼
UPDATE `cdb_settings` SET `value` = '' WHERE CONVERT( `variable` USING utf8 ) ='adminipaccess' LIMIT 1 ;