Detta diskuteras i MySQL-manualkapitlet om Lagringskrav a> . Det finns inget enkelt svar; det beror på kolumnens datatyp, om kolumnen är indexerad; och lagringsmotorn. Effekten av att använda NULL för en kolumn kan variera från ingenting till flera byte (beroende på hur många andra kolumner som också är NULL-kompatibla.)
Lagringseffekten av att deklarera en kolumn som att acceptera NULL, och att faktiskt lagra ett NULL-värde, är förmodligen liten. Att ha en kolumn med många NULL-värden indikerar ofta ett behov av (ytterligare) normalisering.
Grundregeln är, designa ditt schema baserat på egenskaperna hos datan, inte på lagringseffekten. Åtgärda saker bara om de visar sig vara ett problem.