B.3.4.3 & nbsp; Các vấn đề có giá trị null
Khái niệm về giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 là một nguồn gây nhầm lẫn chung cho những người mới đến SQL, người thường nghĩ rằng mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 giống như một chuỗi trống mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
6. Đây không phải là trường hợp. Ví dụ, các câu sau đây hoàn toàn khác nhau:mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
Cả hai câu lệnh chèn một giá trị vào cột
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
7, nhưng đầu tiên chèn giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 và thứ hai chèn một chuỗi trống. Ý nghĩa của thứ nhất có thể được coi là số điện thoại của người Viking không được biết đến và ý nghĩa của thứ hai có thể được coi là người mà người được biết là không có điện thoại, và do đó không có số điện thoại.“phone number is not known” and the meaning of the second can be regarded as “the person is known to have no phone, and thus no phone number.”Để giúp xử lý
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn có thể sử dụng các toán tử mysql> SELECT * FROM my_table WHERE phone = NULL;
0 và mysql> SELECT * FROM my_table WHERE phone = NULL;
1 và hàm mysql> SELECT * FROM my_table WHERE phone = NULL;
2.Trong SQL, giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 không bao giờ đúng so với bất kỳ giá trị nào khác, thậm chí mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4. Một biểu thức chứa mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 luôn tạo ra giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 trừ khi có quy định khác trong tài liệu cho các toán tử và các hàm liên quan đến biểu thức. Tất cả các cột trong ví dụ sau trả về mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4:mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
Để tìm kiếm các giá trị cột là
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn không thể sử dụng thử nghiệm mysql> SELECT * FROM my_table WHERE phone = NULL;
9. Câu lệnh sau trả về không có hàng, vì mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
0 không bao giờ đúng với bất kỳ biểu thức nào:mysql> SELECT * FROM my_table WHERE phone = NULL;
Để tìm kiếm các giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn phải sử dụng thử nghiệm mysql> SELECT * FROM my_table WHERE phone = NULL;
0. Các câu lệnh sau đây cho thấy cách tìm số điện thoại mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 và số điện thoại trống:mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
Xem Phần & NBSP; 3.3.4.6, Làm việc với các giá trị null, để biết thêm thông tin và ví dụ.
Bạn có thể thêm một chỉ mục trên một cột có thể có giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 nếu bạn đang sử dụng công cụ lưu trữ mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
5, mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
6 hoặc mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
7. Mặt khác, bạn phải khai báo một cột được lập chỉ mục mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
8 và bạn không thể chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột.Khi đọc dữ liệu với
mysql> SELECT COUNT[*], COUNT[age] FROM person;
0, các cột trống hoặc thiếu được cập nhật với mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
6. Để tải giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột, hãy sử dụng mysql> SELECT COUNT[*], COUNT[age] FROM person;
3 trong tệp dữ liệu. Từ ngữ mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 cũng có thể được sử dụng trong một số trường hợp. Xem Phần & NBSP; 13.2.7, Tuyên bố dữ liệu tải.Khi sử dụng
mysql> SELECT COUNT[*], COUNT[age] FROM person;
5, mysql> SELECT COUNT[*], COUNT[age] FROM person;
6 hoặc mysql> SELECT COUNT[*], COUNT[age] FROM person;
7, tất cả các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 đều được coi là bằng nhau.Khi sử dụng
mysql> SELECT COUNT[*], COUNT[age] FROM person;
7, các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 được trình bày trước hoặc cuối cùng nếu bạn chỉ định mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
1 để sắp xếp theo thứ tự giảm dần.Các hàm tổng hợp [nhóm] như
mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
2, mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
3 và mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
4 bỏ qua các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4. Ngoại lệ cho điều này là mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
6, đếm các hàng chứ không phải các giá trị cột riêng lẻ. Ví dụ, tuyên bố sau đây tạo ra hai tội danh. Thứ nhất là số lượng của số lượng hàng trong bảng và thứ hai là số lượng của số lượng giá trị không phải là không trong cột mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
8:mysql> SELECT COUNT[*], COUNT[age] FROM person;
Đối với một số loại dữ liệu, MySQL xử lý các giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 theo những cách đặc biệt. Ví dụ: nếu bạn chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột số nguyên hoặc dấu phẩy động có thuộc tính mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
1, số tiếp theo trong chuỗi được chèn. Trong một số điều kiện nhất định, nếu bạn chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
3, ngày và thời gian hiện tại được chèn; Hành vi này phụ thuộc một phần vào chế độ SQL của máy chủ [xem Phần & NBSP; 5.1.11, Máy chủ SQL Modes SQL] cũng như giá trị của biến hệ thống mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4. B.3.4.3 & nbsp; Các vấn đề có giá trị null
Khái niệm về giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 là một nguồn gây nhầm lẫn chung cho những người mới đến SQL, người thường nghĩ rằng mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 giống như một chuỗi trống mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
6. Đây không phải là trường hợp. Ví dụ, các câu sau đây hoàn toàn khác nhau:mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
Cả hai câu lệnh chèn một giá trị vào cột
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
7, nhưng đầu tiên chèn giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 và thứ hai chèn một chuỗi trống. Ý nghĩa của thứ nhất có thể được coi là số điện thoại của người Viking không được biết đến và ý nghĩa của thứ hai có thể được coi là người mà người được biết là không có điện thoại, và do đó không có số điện thoại.“phone number is not known” and the meaning of the second can be regarded as “the person is known to have no phone, and thus no phone number.”Để giúp xử lý
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn có thể sử dụng các toán tử mysql> SELECT * FROM my_table WHERE phone = NULL;
0 và mysql> SELECT * FROM my_table WHERE phone = NULL;
2 và hàm mysql> SELECT * FROM my_table WHERE phone = NULL;
2.Trong SQL, giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 không bao giờ đúng so với bất kỳ giá trị nào khác, thậm chí mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4. Một biểu thức chứa mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 luôn tạo ra giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 trừ khi có quy định khác trong tài liệu cho các toán tử và các hàm liên quan đến biểu thức. Tất cả các cột trong ví dụ sau trả về mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4:mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
Để tìm kiếm các giá trị cột là
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn không thể sử dụng thử nghiệm mysql> SELECT * FROM my_table WHERE phone = NULL;
9. Câu lệnh sau trả về không có hàng, vì mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
1 không bao giờ đúng với bất kỳ biểu thức nào:mysql> SELECT * FROM my_table WHERE phone = NULL;
Để tìm kiếm các giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4, bạn phải sử dụng thử nghiệm mysql> SELECT * FROM my_table WHERE phone = NULL;
0. Các câu lệnh sau đây cho thấy cách tìm số điện thoại mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 và số điện thoại trống:mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
Xem Phần & NBSP; 3.3.4.6, Làm việc với các giá trị null, để biết thêm thông tin và ví dụ.
Bạn có thể thêm một chỉ mục trên một cột có thể có giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 nếu bạn đang sử dụng công cụ lưu trữ mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
5, mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
6 hoặc mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
7. Mặt khác, bạn phải khai báo một cột được lập chỉ mục mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
8 và bạn không thể chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột.Khi đọc dữ liệu với
mysql> SELECT COUNT[*], COUNT[age] FROM person;
1, các cột trống hoặc thiếu được cập nhật với mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
6. Để tải giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột, hãy sử dụng mysql> SELECT COUNT[*], COUNT[age] FROM person;
3 trong tệp dữ liệu. Từ ngữ mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 cũng có thể được sử dụng trong một số trường hợp. Xem Phần & NBSP; 13.2.7, Tuyên bố dữ liệu tải.Khi sử dụng
mysql> SELECT COUNT[*], COUNT[age] FROM person;
5, mysql> SELECT COUNT[*], COUNT[age] FROM person;
7 hoặc mysql> SELECT COUNT[*], COUNT[age] FROM person;
7, tất cả các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 đều được coi là bằng nhau.Khi sử dụng
mysql> SELECT COUNT[*], COUNT[age] FROM person;
7, các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 được trình bày trước hoặc cuối cùng nếu bạn chỉ định mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
1 để sắp xếp theo thứ tự giảm dần.Các hàm tổng hợp [nhóm] như
mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
2, mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
3 và mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
4 bỏ qua các giá trị mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4. Ngoại lệ cho điều này là mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
6, đếm các hàng chứ không phải các giá trị cột riêng lẻ. Ví dụ, tuyên bố sau đây tạo ra hai tội danh. Thứ nhất là số lượng của số lượng hàng trong bảng và thứ hai là số lượng của số lượng giá trị không phải là không trong cột mysql> INSERT INTO my_table [phone] VALUES [NULL];
mysql> INSERT INTO my_table [phone] VALUES [''];
8:mysql> SELECT COUNT[*], COUNT[age] FROM person;
Đối với một số loại dữ liệu, MySQL xử lý các giá trị
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 theo những cách đặc biệt. Ví dụ: nếu bạn chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột số nguyên hoặc dấu phẩy động có thuộc tính mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
1, số tiếp theo trong chuỗi được chèn. Trong một số điều kiện nhất định, nếu bạn chèn mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4 vào cột mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
3, ngày và thời gian hiện tại được chèn; Hành vi này phụ thuộc một phần vào chế độ SQL của máy chủ [xem Phần & NBSP; 5.1.11, Máy chủ SQL Modes SQL] cũng như giá trị của biến hệ thống mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
4.BÀi VIếT NÀY Sẽ HướNG
Dr.e.f.codd, là người tạo ra muô
Mysql cũng hỗ trợ null với ý NGHĩA Là THIếU TH SONG TIN HOặC THỐNG TIN KHÍNG KHả Dụng.
Trong bảng dữ liệu, nếu như lưu giá trị null vào
Để teng tính Đọc Đan Và hiểu Đ-c thì bạn phải hiển thị giá trị null bằng một giá tr Để lÀm Điều nào thì bạn đó là thể sử dụng ha____118.
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
0Nếu như mà
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
19 là mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
20 [exp 0 và exp null], thì ha____118 sẽ trả về giá trị của mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
22Giá trị trả về Phụ THUộC VÀO BIểU THứC
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
22 VÀ mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
23 VÀ YĐể hiểu hơn thì chún ta sẽ lÀm một số ví dụ.
Chún ta sẽ sử dụng bảng
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
26 cơ sở dữ liệu trong mẫuLấy một số thang tin trong bảng
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
26:mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
1Ở Kết Quả Truy vấn trênn thì Một Số Giá Trị Của Cột
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
28 Không Có. Chún ta sẽ sử dụng hamysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
2Ngoài ha
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
18, chún taó đó Cú Phá NHư Sau:HÀM
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
32 Sẽ TRả Về Giá trị Biểu thức mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
34Xem ví dụ dưới đây:
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
3Vậy là với 2 ha
mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
18 Và mysql> SELECT NULL, 1+NULL, CONCAT['Invisible',NULL];
32 thÌ Giúp Cho Việc Đ-c dữ liệu dễ hơn và hiểu hơn.