1. 程式人生 > >MYSQL 在欄位裡現有內容後面新增字串

MYSQL 在欄位裡現有內容後面新增字串

更新一個欄位,在它的後面加一個字串,不查詢資料庫得到這個欄位值 怎麼新增??

    我的test表,有個user欄位,我現在想在它後面加了另一個使用者的名字
    我在mysql資料庫這樣寫
UPDATE test SET user= user+ ',phpchina'  WHERE id= '2';     這樣是不對的,mysql資料庫把它當成數字相加了,user欄位值變成空了。
應該: UPDATE test SET user= CONCAT(user,',phpchina')  WHERE id= '2';

    即:“+”只適合整數相加,不適合字串。

附:兩個

MySQL字串函式:

(1) CONCAT(str1,str2,...)                       

    返回結果為將引數相連後得到的字串。如有任何一個引數為NULL ,則返回值為 NULL。或許有一個或多個引數。 如果所有引數均為非二進位制字串,則結果為非二進位制字串。 如果自變數中含有任一二進位制字串,則結果為一個二進位制字串。一個數字引數被轉化為與之相等的二進位制字串格式;若要避免這種情況,可使用顯式型別。

(2)CONCAT_WS()

update friend set cname=CONCAT_WS('.',cname,'wang') where id=1(欄位cname原值為'Rick')

輸出結果為Rick.wang.注意,第一個引數為連線兩個字串的字元.