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

Làm cách nào để kiểm tra xem dữ liệu có phải là NULL trong MySQL hay không?

Bạn có thể sử dụng IF () để kiểm tra xem dữ liệu có phải là NULL hay không. Đầu tiên chúng ta hãy tạo một bảng -

 mysql> tạo bảng DemoTable (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar (200), Age int); Truy vấn OK, 0 hàng bị ảnh hưởng (0,44 giây) 

Chèn bản ghi vào bảng bằng lệnh chèn -

 mysql> chèn vào giá trị DemoTable (Tên, Tuổi) ('John', 23); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào giá trị DemoTable (Tên, Tuổi) ('Sam', null); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào các giá trị DemoTable (Tên, Tuổi) ('Mike', 23); Truy vấn OK, 1 hàng bị ảnh hưởng (0,20 giây) mysql> chèn vào DemoTable (Tên, Tuổi) giá trị ('David', 21); Truy vấn OK, 1 hàng bị ảnh hưởng (0,21 giây) mysql> chèn vào các giá trị DemoTable (Tên, Tuổi) ('Carol', null); Truy vấn OK, 1 hàng bị ảnh hưởng (0,13 giây)  

Hiển thị các bản ghi từ bảng bằng lệnh select -

 mysql> select * từ DemoTable; 

Điều này sẽ tạo ra kết quả sau -

 + ---- + ------- + ------ + | Id | Tên | Tuổi | + ---- + ------- + ------ + | 1 | John | 23 || 2 | Sam | NULL || 3 | Mike | 23 || 4 | David | 21 || 5 | Carol | NULL | + ---- + ------- + ------ + 5 hàng trong bộ (0,00 giây) 

Đây là câu truy vấn để kiểm tra xem dữ liệu có phải là NULL hay không. Điều này thêm một thông báo ở bất cứ nơi nào NULL trong bản ghi được hiển thị -

 mysql> select if (Age IS NULL, 'Age is NULL', Age) từ DemoTable; 

Điều này sẽ tạo ra kết quả sau -

 + -------------------------------------- + | if (Tuổi KHÔNG ĐỦ, 'Thiếu tuổi', Tuổi) | + ---------------------------------- ---- + | 23 || Tuổi còn thiếu || 23 || 21 || Thiếu độ tuổi | + -------------------------------------- + 5 hàng trong bộ (0,00 giây)