了解到:
NULL 語意不清晰
query 時不好優化
如果表示空值, 可以有其他的替代方式( 邏輯上 )
VARCHAR(100) NOT NULL DEFAULT '';
#INT NOT NULL DEFAULT 0;
希望能了解在設計scheme的時候, 對待NULL的態度( 記得有看過一篇文章說過, 應該盡量: NOT NULL DEFAULT XXX)
是,應該盡可能避免可為NULL的列,並且盡可能顯示設定預設值,尤其是被索引的欄位。 mysql中,null佔空間,如果該值被索引,那麼其索引無效。
是的,判斷欄位不為空的時候,還要用is not null,mysql中的NULL其實是佔用空間的,B樹索引時不會儲存NULL值的,所以如果索引的欄位可以為NULL,索引的效率會下降很多。
是,應該盡可能避免可為NULL的列,並且盡可能顯示設定預設值,尤其是被索引的欄位。 mysql中,null佔空間,如果該值被索引,那麼其索引無效。
是的,判斷欄位不為空的時候,還要用is not null,mysql中的NULL其實是佔用空間的,B樹索引時不會儲存NULL值的,所以如果索引的欄位可以為NULL,索引的效率會下降很多。