Trong hướng dẫn này, tôi sẽ giải thích về cách làm việc với NULL trong MySQL bằng các ví dụ. Bài viết này sẽ bao gồm các chủ đề sau. Hãy xem nào
- Giới thiệu
- Ví dụ về giá trị NULL của MySQL
- MySQL SET NULL Giá trị trong Tuyên bố CẬP NHẬT
- Các hàm liên quan đến giá trị NULL trong MySQL
- Phần kết luận
Khái niệm về giá trị null là một vấn đề phổ biến đối với người mới bắt đầu. Null giống như một chuỗi rỗng. Trong MySQL, máy chủ không làm gì để không cho phép null làm giá trị của biểu thức được phân phối, cho dù đó là giá trị cột hay giá trị của biểu thức do người dùng cung cấp. Null là bất thường vì nó không đại diện cho một giá trị cụ thể theo cách mà các giá trị số, chuỗi hoặc thời gian thực hiện. Mặc dù được phép sử dụng Null làm giá trị của một biểu thức mà nếu không thì nó phải mang lại một số nguyên, nhưng điều quan trọng cần lưu ý là null không phải là một số
NULL được định nghĩa là, một thuật ngữ có giá trị khác 0 và chuỗi rỗng, i. e. giá trị không xác định hoặc dấu hiệu cho thấy dữ liệu bị thiếu
Ví dụ về giá trị NULL của MySQL
Chúng tôi cho rằng có một bảng có tên là “GrowthMindsets” trong cơ sở dữ liệu “csharpcorner” với một số dữ liệu giả trong đó. Hãy xem nào
Tạo một bảng
- DROP BẢNG NẾU TỒN TẠI GrowthMindSets;
- TẠO BẢNG GrowthMindSets[
- GMS_ID INT AUTO_INCREMENT KEY chính,
- First_Name VARCHAR[50] KHÔNG NULL,
- Họ_VARCHAR[50] KHÔNG NULL,
- MÔ TẢ VARCHAR[255] KHÔNG NULL,
- Địa chỉ email VARCHAR[100],
- Điện thoạiKhông BIGINT
- ];
Bây giờ, chèn một số dữ liệu giả vào nó
- CHÈN VÀO GrowthMindSets[First_Name, Last_Name, DESCRIPTION, EmailAddress, PhoneNo] VALUES['Vatsa', 'Admin', 'Expert in Business', 'test@gmail. com', '9876543211'],
- ['Onkar', 'Quản trị viên', 'Chuyên gia trong Phát triển', 'test1@gmail. com', '9876543221'],
- ['Rohit', 'Quản trị viên', 'Chuyên gia về Truyền thông', NULL, '9876543231'],
- ['Jasmine', 'Quản trị viên', 'Chuyên gia trong DBA', 'test@gmail. com', NULL],
- ['Anamika', 'Quản trị viên', 'Chuyên gia trong BDA', NULL, NULL];
Bây giờ, bạn có thể kiểm tra dữ liệu bảng của mình bằng cách nhập truy vấn sau
- CHỌN * TỪ GrowthMindSets;
Ở đây, chúng ta có thể thấy biểu tượng “=” và “. =” không hoạt động với các giá trị “NULL” như sau
- CHỌN * TỪ GrowthMindSets WHERE tutorial_count = NULL;
- CHỌN * TỪ GrowthMindSets Ở ĐÂU tutorial_count. = NULL;
Để tìm các bản ghi trong đó cột “EmailAddress” bằng hoặc không bằng NULL, các truy vấn phải được viết như sau
- CHỌN * TỪ GrowthMindSets
- Ở ĐỊA CHỈ Địa chỉ Email LÀ NULL;
- CHỌN * TỪ GrowthMindSets
- Ở ĐÂU Địa chỉ Email KHÔNG PHẢI là NULL;
Các giá trị SET NULL của MySQL trong câu lệnh CẬP NHẬT
Bằng cách sử dụng toán tử gán [“=”], bạn có thể đặt bất kỳ giá trị nào của một cột thành NULL bằng cách sử dụng Câu lệnh cập nhật
- CẬP NHẬT tư duy phát triển
- SET Địa chỉ Email = NULL
- Ở ĐÂU GMS_ID = 4 và GMS_ID = 5
Bằng cách sử dụng truy vấn sau, bạn có thể kiểm tra đầu ra
- CHỌN * TỪ BỘT TƯ DUY PHÁT TRIỂN
- Ở ĐÂU Địa chỉ email LÀ NULL VÀ Số điện thoại IS NULL
GIÁ TRỊ NULL CÁC CHỨC NĂNG LIÊN QUAN TRONG MYSQL
1] Trong MYSQL có một số hàm dành riêng để sử dụng với các giá trị NULL, bao gồm ISNULL [] và IFNULL []. ISNULL[] là đúng nếu đối số của nó là NULL và sai nếu ngược lại
- CHỌN ISNULL[NULL], ISNULL[0], ISNULL[1];
2] IFNULL[] nhận hai đối số. Nếu đối số đầu tiên không phải là NULL, thì đối số đó được trả về;
- CHỌN IFNULL[NULL,'a'], IFNULL[0,'b'];
Trong ví dụ này, tôi sẽ chỉ cho bạn một truy vấn trả về chuỗi rỗng [‘’] nếu giá trị của nó là NULL
- CHỌN First_Name, Last_Name, Description, IFNULL[EmailAddress, ''], IFNULL[PhoneNo, ''] TỪ GROWTHMINDSETS;
3] Các hàm khác xử lý giá trị NULL theo nhiều cách khác nhau, vì vậy bạn phải biết cách hoạt động của một hàm đã cho. Trong nhiều trường hợp, việc truyền giá trị NULL cho hàm dẫn đến giá trị trả về NULL
Bất kỳ đối số NULL nào được chuyển đến CONCAT[] đều khiến nó trả về NULL
- CHỌN CONCAT['a','b'], CONCAT['a',NULL,'b'];
4] Nhưng không phải chức năng nào cũng hoạt động theo cách đó. CONCAT_WS[] [nối với dấu tách] chỉ cần bỏ qua hoàn toàn các đối số NULL
Ví dụ
- CHỌN CONCAT_WS['/','a','b'], CONCAT_WS['/','a',NULL,'b'];
Dưới đây là một số tài nguyên liên quan hữu ích
Trong bài viết này, tôi đã thảo luận về khái niệm xử lý giá trị NULL trong MySQL với nhiều ví dụ khác nhau