Mysql中定义为数值型默认为NULL的字段。(假设此字段名为like,表名为games),此字段上通过语句:UPDATE `games` SET like = ifnull(like,0) + 1 来更新like字段的值。
1、如果字段 like 的值空的话想通过该更新语句更新like字段的值将不起作用;同样如果使用语句:
UPDATE `games` SET like = ifnull(like,0) - 1 ,同样也会不起作用。
2、只有字段 like 的值不会空(即有数值),则执行以上更新语句,才会起作用。
3、mysql update更新失败
UPDATE `table` SET`filed1` = 2 WHERE `id` = 1
UPDATEtable SET filed1 = 2 WHERE id = 1
需要注意的是所有的字段(表名)都不能用引号引用,否则sql语句将会失效,系统并不会报错。
本文探讨了MySQL中当数值型字段被设置为NULL时,使用IFNULL进行加减操作的局限性。仅当字段非空时,更新操作才生效。
9627

被折叠的 条评论
为什么被折叠?



