Computer >> Máy Tính >  >> Lập trình >> MySQL

Trong MySQL, làm thế nào để thay thế tất cả các giá trị NULL trong một trường cụ thể của một bảng cụ thể?

Để thay thế tất cả các giá trị NULL trong một trường cụ thể của một bảng cụ thể, hãy sử dụng lệnh UPDATE với thuộc tính IS NULL. Cú pháp như sau:

UPDATE yourTableName SET yourColumnName=”yourValue’ WHERE yourColumnName IS NULL;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau:

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)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn để chèn bản ghi như sau:

mysql> insert into Employee_Information_Table(Name,Salary) values('John',NULL);
Query OK, 1 row affected (0.13 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('Carol',NULL);
Query OK, 1 row affected (0.17 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('Bob',NULL);
Query OK, 1 row affected (0.10 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('David',NULL);
Query OK, 1 row affected (0.17 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('Robert',NULL);
Query OK, 1 row affected (0.12 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('Mike',NULL);
Query OK, 1 row affected (0.24 sec)

mysql> insert into Employee_Information_Table(Name,Salary) values('Sam',NULL);
Query OK, 1 row affected (0.17 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau:

mysql> select *from Employee_Information_Table;

Sau đây là kết quả:

+----+--------+--------+
| 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)

Đây là truy vấn để thay thế tất cả các giá trị NULL thành một trường cụ thể của một bảng cụ thể. Truy vấn như sau:

mysql> update Employee_Information_Table
   -> set Salary=45500 where Salary IS NULL;
Query OK, 7 rows affected (0.23 sec)
Rows matched: 7 Changed: 7 Warnings: 0

Bây giờ hãy kiểm tra các bản ghi bảng một lần nữa. Tất cả các giá trị NULL đã được cập nhật với một số giá trị. Sau đây là truy vấn để liệt kê tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select:

mysql> select *from Employee_Information_Table;

Sau đây là kết quả:

+----+--------+--------+
| 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)