В Oracle может значительно сэкономить место на диске, если в вашей таблице есть несколько столбцов NULLable, а столбцы NULLable помещены в конец списка. Значения NULL в конце строки не занимают пробела.
например. представьте себе эту таблицу: (id NOT NULL, name VARCHAR2(100), surname VARCHAR2(100), blah VARCHAR2(100, date_created DATE NOT NULL)
строке (100, NULL, NULL, NULL, '10-JAN-2000')
потребуется хранилище для значений 100, некоторое пространство для трех NULL, а затем дата.
В качестве альтернативы, та же таблица, но с другим порядком: (id NOT NULL, date_created DATE NOT NULL, name VARCHAR2(100), surname VARCHAR2(100), blah VARCHAR2(100))
строка (100, '10-JAN-2000', NULL, NULL, NULL)
будет требовать хранения только для значений 100 и даты - завершающие NULL полностью опущены.
Обычно это не имеет большого значения, но для очень больших таблиц со многими столбцами NULL может быть достигнута значительная экономия - меньше используемого пространства может преобразовать в большее количество строк в блоке, что означает меньшее количество операций ввода-вывода и ЦП, необходимых для запроса таблицы.