close
在 MySQL 裡面,想要將兩個以上的字串合再一起,應該怎麼做呢?
可使用以下方法:
/* 該語法會將 字串1 ~ 字串N 全部串再一起 */ CONCAT( 字串1, 字串2, 字串3, ... , 字串N );
例如說,我有一個資料庫,表名稱為 "user",資料如下:
`id` `name` 1 Bill 2 Bob 3 Carl 4 David 5 Tom
執行以下語法後的結果為:
/* 在所有資料的 name 欄位中, 使用 CONCAT 加入 _vip 的字串 */ UPDATE `user` SET `name` = CONCAT(`name`, '_vip'); /* 以下為執行後結果, 所有資料欄位 `name` 的值後面, 加上了 _vip */ `id` `name` 1 Bill_vip 2 Bob_vip 3 Carl_vip 4 David_vip 5 Tom_vip
如果直接執行 + 的話,是錯誤的,例如:
/* 在所有資料的 name 欄位中, 使用 + 加入 _test 的字串 */ /* 不過該作法是錯誤的!!! */ UPDATE `user` SET `name` = (`name` + '_test'); /* 以下為執行後結果, 所有資料欄位 `name` 的值都變成了 0 */ `id` `name` 1 0 2 0 3 0 4 0 5 0
/* 將所有資料的 name 欄位中的值, 使用 CONCAT 改為 test123 的字串 */ UPDATE `user` SET `name` = CONCAT('test', '123'); /* 以下為執行後結果, 所有資料欄位 `name` 的值都變成了 test123 */ `id` `name` 1 test123 2 test123 3 test123 4 test123 5 test123
所以說,不管你要新增或者修改字串,若想把兩個或多個字串串聯再一起的話,就必須使用 CONCAT。
而直接使用 + 可是錯誤的!
文章標籤
全站熱搜
留言列表