MySQL 如何替换特定表中特定字段中的所有NULL值
要替换特定表中特定字段中的所有NULL值,请使用UPDATE命令和IS NULL属性。 语法如下:
UPDATE yourTableName SET yourColumnName=”yourValue’ WHERE yourColumnName IS NULL;
为了理解上述语法,让我们创建一个表。 创建表的查询如下:
mysql> create table Employee_Information_Table
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Name varchar(20),
-> Salary int,
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.59 sec)
使用insert命令在表中插入一些记录。 插入记录的查询如下:
mysql> insert into Employee_Information_Table(Name,Salary) values('John',NULL);
Query OK,1行受影响(用时0.13秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('Carol',NULL);
Query OK,1行受影响(用时0.17秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('Bob',NULL);
Query OK,1行受影响(用时0.10秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('David',NULL);
Query OK,1行受影响(用时0.17秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('Robert',NULL);
Query OK,1行受影响(用时0.12秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('Mike',NULL);
Query OK,1行受影响(用时0.24秒)
mysql> insert into Employee_Information_Table(Name,Salary) values('Sam',NULL);
Query OK,1行受影响(用时0.17秒)
使用select语句显示表中的所有记录。 查询如下:
mysql> select *from Employee_Information_Table;
以下是输出结果:
+----+--------+--------+
| Id | Name | Salary |
+----+--------+--------+
| 1 | John | NULL |
| 2 | Carol | NULL |
| 3 | Bob | NULL |
| 4 | David | NULL |
| 5 | Robert | NULL |
| 6 | Mike | NULL |
| 7 | Sam | NULL |
+----+--------+--------+
7 rows in set (0.00 sec)
这是用于将特定表中特定字段中的所有NULL值替换为某个值的查询。查询如下:
mysql> update Employee_Information_Table
-> set Salary=45500 where Salary IS NULL;
Query OK,7行受影响(用时0.23秒)
匹配行:7 更改行:7 警告:0
现在再次检查表记录。 所有NULL值都已更新为某个值。 使用select语句列出表中的所有记录的查询如下:
mysql> select *from Employee_Information_Table;
以下是输出结果:
+----+--------+--------+
| Id | Name | Salary |
+----+--------+--------+
| 1 | John | 45500 |
| 2 | Carol | 45500 |
| 3 | Bob | 45500 |
| 4 | David | 45500 |
| 5 | Robert | 45500 |
| 6 | Mike | 45500 |
| 7 | Sam | 45500 |
+----+--------+--------+
7 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程