Мне интересно узнать, как NULL хранятся в базе данных?
Это, безусловно, зависит от сервера базы данных, но я хотел бы иметь общее представление об этом.
Первая попытка:
Предположим, что сервер поместил неопределенное значение (может быть что угодно) в поле для значения NULL.
Может быть, вам очень повезет, и вы получите значение NULL с помощью
...WHERE field = 'the undefined value (remember, could be anything...)'
Вторая попытка:
Есть ли на сервере флаг или какие-либо метаданные, указывающие, что это поле равно NULL?
Затем сервер должен прочитать эти метаданные, чтобы проверить поле.
Если в метаданных указано значение NULL и если в запросе нет «поле IS NULL», запись игнорируется.
Это кажется слишком легким...