可以使用CONCAT函数进行字符串的连接,CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col)mysql> SELECT CONCAT(’My’, ‘S’, ‘QL’); -> ‘MySQL’mysql> SELECT CONCAT(’My’, NULL, ‘QL’); -> NULLmysql> SELECT CONCAT(14.3); -> ‘14.3′CONCAT_WS(separator,str1,str2,…) CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。 第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。呵呵,希望能有帮助,^_^
用concat函数。update 表名 set 字段=concat(ifnull(字段,''),'要追加的字符串');********************测试log:1、concat连接两个非空字符串mysql> select concat('bbbb','aaaaa');+------------------------+| concat('bbbb','aaaaa') |+------------------------+| bbbbaaaaa |+------------------------+1 row in set (0.00 sec)2、concat连接一个空字符串和非空字符串mysql> select concat(ifnull(NULL,''),'aaaaa');+---------------------------------+| concat(ifnull(NULL,''),'aaaaa') |+---------------------------------+| aaaaa |+---------------------------------+1 row in set (0.00 sec)---以上,希望对你有所帮助。
lzp4881 用的是 SQL Server 语法,正规的 SQL 92 语法是:update tableA set fieldA = fieldA || '新字符串'该 SQL 在绝大部分支持 SQL 92 的数据库中都通用,例如 Oracle、DB2 等。