Значение «нет данных» в столбце должно быть представлено значением по умолчанию. Помните, что NULL означает неизвестное значение, то есть столбец может иметь значение или нет, но вы не знаете его на данный момент.
Например, в системе заявок на получение ссуды значение NULL в поле Номер водительского удостоверения означает, что заявитель или обработчик ссуды не вводили номер водительского удостоверения. Значение NULL автоматически не означает, что у заявителя нет лицензии. Он может иметь или не иметь лицензию, вы просто ее не знаете, поэтому она имеет значение NULL.
Неоднозначность заключается в строковых столбцах. Числовой столбец, очевидно, содержит ноль, если нет значения. Как вы можете представить строку без значения? В приведенном выше примере для заявителей, у которых нет водительских прав, вы можете назначить произвольное значение по умолчанию, например, «none» или, что еще лучше, пустую строку. Просто убедитесь, что вы используете пустое значение по умолчанию в других таблицах для согласованности.
Что касается вопроса о том, чтобы не использовать NULL в качестве принципа, существуют случаи, когда они действительно необходимы. Как те, кто активно работает со статистикой, поставщики данных обычно предоставляют вам наборы данных с неполными данными. Например, в наборе данных о ВВП на страну вы можете найти недостающие показатели ВВП за предыдущие и последующие годы. Одной из причин является то, что официальных данных за эти годы от правительства страны нет. Будет неверным делать вывод, что их ВВП равен нулю (DUH!) И показывать нулевое значение в извлеченных данных или графике. Правильное значение NULL, означающее, что у вас еще нет данных. Конечный пользователь правильно интерпретирует отсутствующие точки данных в извлеченных данных и графиках как НЕ ноль. Кроме того, это не вызовет ошибок в ваших вычислениях, особенно когда вы делаете средние значения.
Некоторые "правила", которые имеют теоретический смысл, на самом деле будут плохим или неправильным решением в вашем случае.