1. Tối ưu hóa truy vấn khó khăn hơn: MySQL gặp khó khăn hơn trong việc tối ưu hóa các truy vấn liên quan đến các cột NULL-able vì chúng làm cho việc Index và so sánh giá trị trở nên phức tạp hơn. (Hiểu đơn giản, đang có một đám Index dạng số nguyên, tự nhiên lòi ra một ông NULL, biết nhét ông đó vào đâu để tiện truy vấn, so sánh, sắp xếp bây giờ … )
2. Tiêu tốn không gian lưu trữ: Cột có thể NULL sử dụng nhiều không gian lưu trữ hơn và yêu cầu xử lý đặc biệt bên trong MySQL. (Có thể hiểu đơn giản, MySQL cần lưu trữ thêm một cờ (flag) tại từng cột để đánh dấu cột đó là NULL-able)
3. So sánh giá trị phức tạp hơn: Các so sánh giá trị với cột có thể NULL phức tạp hơn vì MySQL phải xử lý các giá trị NULL một cách đặc biệt. (tương tự như hai mục trên đã mô tả).

0