Стандартный логический оператор SQL оператор IS vs. equals (=)

На странице Википедии для SQL есть несколько таблиц истинности о булевой логике в SQL. [1] Похоже, что страница Википедии является источником стандарта SQL: 2003.

Таблица истинности для оператора равенства (=) отличается от оператора IS из черновика SQL: 2003.

Также в статье в Википедии отмечается, что «IS NULL» (<предикат null>) является особым случаем.

В SQL: 2003 кажется, что есть оператор IS, который является обычным оператором, подобным AND, NOT и OR. Однако <нулевой предикат> все еще там.

Почему существует <нулевой предикат>, когда IS является обычным логическим оператором? Чтобы убедиться, что вы можете использовать конструкцию «IS NULL» с небулевыми значениями без приведения типов? Не рекомендуется использовать "= NULL"?

Стандарт SQL: 2011 работает по-другому?

[1]:Википедия по SQL

[2]:SQL: черновик 2011 года PDF страница 335

[3]:Черновик SQL: 2003 PDF страница 397

Ответы на вопрос(2)

Ваш ответ на вопрос