MySql数据库,更新字段数据的问题
如果该字段原来存在数据,就把新提交的数据附加在原来数据之后; 如果该字段原来为空,就直接把新提交的数据插入该字段。 问题是: sql语句怎么写?下面这样写不对: update tables set a=a+'new data'; 如果这样写,只能用在原来存在数据的情况。如果原来没有数据,该函数不起作用: update tables set a=CONCAT(a,'new data'); 请问各位高手,有没有简单的解决办法,不管原来存不存在数据都能达到目的?
如果该字段原来存在数据,就把新提交的数据附加在原来数据之后; 如果该字段原来为空,就直接把新提交的数据插入该字段。 问题是: sql语句怎么写?下面这样写不对: update tables set a=a+'new data'; 如果这样写,只能用在原来存在数据的情况。如果原来没有数据,该函数不起作用: update tables set a=CONCAT(a,'new data'); 请问各位高手,有没有简单的解决办法,不管原来存不存在数据都能达到目的?
答案:我刚试了按照下面的这样是的行的。
update tables set a = concat(ifnull(a,''),'','new data')
就是先用 ifnull(a,'') 把 null 值换成 ''
然后在用 concat(a,'','new data') 拼接。
上一个:mysql数据库问题
下一个:mysql 查看数据库中的表