InnoDB में NULL कम स्पेस लेता है खाली स्ट्रिंग ('') की तुलना में।
तुलना
| पहलू | NULL | खाली स्ट्रिंग ('') |
|---|---|---|
| लंबाई (LENGTH) | NULL | 0 |
| COUNT(column) | 0 | 1 |
| स्टोरेज | कम | थोड़ा ज्यादा |
टेस्ट
CREATE TABLE DemoEmptyAndNULL (Message VARCHAR(100));
INSERT INTO DemoEmptyAndNULL VALUES ('');
SELECT COUNT(Message) FROM DemoEmptyAndNULL; -- 1
DELETE FROM DemoEmptyAndNULL;
INSERT INTO DemoEmptyAndNULL VALUES ();
SELECT COUNT(Message) FROM DemoEmptyAndNULL; -- 0
सिफारिश
खाली स्ट्रिंग बेहतर जब डेटा "नहीं भरा गया" दर्शाना हो। NULL एक्स्ट्रा वर्क कराता है (IS NULL चेक, इंडेक्स इश्यू)। लेकिन COUNT() पर NULL एक्सेप्शन नहीं फेंकता।