VABRO
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Вот можете внятнее писать, если захотите. NULL -- это не совсем третье логическое значение. Оно особняком держится от TRUE/FALSE (нужно специально изучать, как себя ведёт NULL при разных операциях). "NULL" следует читать на русском, как "неизвестно". Поэтому сразу же по-житейски становится понятным многое из результатов операций с данными полей, в которых есть значения "NULL": NULL == NULL? => NULL (неизвестность == неизвестности? => неизвестно) Сложение и умножение точно так же себя ведёт, объединение строк точно такой же результат даёт. С житейского опыта - да не удобно. Вот ещё при объединении таблиц, хитрых запросах появляются пустые значения, которые тоже NULL обозначаются, но тут в смысл у них -- "пустое значение/множество", а не "неизвестно". В общем, кому не нравится, тому и нечего заниматься не своим делом, а то началось переливание из пустого в порожнее. eddoc Уже ранее писал про статью на сайте firebird: Что такое NULL? Так приняли! Но вон же меняют синтаксис и добавляют плюшки (как уже написал AlexPetrovich): Add support for "some_col = ? or ? IS NULL" conditions Пишите им, стучитесь, а не переливайте из пустого в порожнее. Сумеете аргументировано показать большие плюсы от своей хотелки -- есть большой шанс, что сделают (раз синтаксис дополняют). Но у меня подозрения, что такое поведение с выражением _where_ поломает совместимость. |