为此,请使用MySQL设置条件IF()
。让我们首先创建一个表-
mysql> create table DemoTable1592 -> ( -> StudentMarks int -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1592 values(56); mysql> insert into DemoTable1592 values(NULL); mysql> insert into DemoTable1592 values(98); mysql> insert into DemoTable1592 values(0); mysql> insert into DemoTable1592 values(75); mysql> insert into DemoTable1592 values(NULL);
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1592;
这将产生以下输出-
+--------------+ | StudentMarks | +--------------+ | 56 | | NULL | | 98 | | 0 | | 75 | | NULL | +--------------+ 6 rows in set (0.00 sec)
这是只更新包含null或0的字段的查询-
mysql> update DemoTable1592 set StudentMarks=if(StudentMarks IS NULL or StudentMarks=0,33,StudentMarks); Rows matched: 6 Changed: 3 Warnings: 0
让我们再次检查表记录-
mysql> select * from DemoTable1592;
这将产生以下输出-
+--------------+ | StudentMarks | +--------------+ | 56 | | 33 | | 98 | | 33 | | 75 | | 33 | +--------------+ 6 rows in set (0.00 sec)