Теория баз данных


         

При сравнении неопределенных значений не


При сравнении неопределенных значений не действуют стандартные правила сравнения: одно неопределенное значение никогда не считается равным другому неопределенному значению. Для выявления равенства значения некоторого атрибута неопределенному применяют специальные стандартные предикаты:

<имя атрибута>IS NULL и <имя атрибута> IS NOT NULL.

Если в данном кортеже (в данной строке) указанный атрибут имеет неопределенное значение, то предикат IS NULL принимает значение «Истина» (TRUE), а предикат IS NOT NULL — «Ложь» (FALSE), в противном случае предикат IS NULL принимает значение «Ложь», а предикат IS NOT NULL принимает значение «Истина».

Введение Null-значений вызвало необходимость модификации классической двузначной логики и превращения ее в трехзначную. Все логические операции, производимые с неопределенными значениями, подчиняются этой логике в соответствии с заданной таблицей истинности:





































































































































































































А





В





Not A





А ^ В





A
B





TRUE



TRUE



FALSE



TRUE



TRUE



TRUE



FALSE



FALSE



FALSE



TRUE



TRUE



Null



FALSE



Null



TRUE



FALSE



TRUE



TRUE



FALSE



TRUE



FALSE



FALSE



TRUE



FALSE



FALSE



FALSE



Null



TRUE



FALSE



Null



Null



TRUE



Null



Null



TRUE



Null



FALSE



Null



FALSE



Null



Null



Null



Null



Null



Null



Предикаты существования EXIST и несуществования NOT EXIST. Эти предикаты относятся к встроенным подзапросам, и подробнее мы рассмотрим их, когда коснемся вложенных подзапросов.

В условиях поиска могут быть использованы все рассмотренные ранее предикаты.

Отложив на время знакомство с группировкой, рассмотрим детально первые три строки оператора SELECT:

  • SELECT — ключевое слово, которое сообщает СУБД, что эта команда — запрос. Все запросы начинаются этим словом с последующим пробелом. За ним может следовать способ выборки — с удалением дубликатов (DISTINCT) или без удаления (ALL, подразумевается по умолчанию).

    Содержание  Назад  Вперед