3
№ п/п | Название книги | Дата покупки | Число страниц | Иллюстрации | Автор |
1 | Волшебник Изумрудного города | 1995 | 189 | Цветные иллюстрации | А. Волков |
2 | Урфин Джус и его деревянные солдаты | 1999 | 150 | Без иллюстраций | |
3 | Семь подземных королей | 2005 | 201 | Цветные иллюстрации | |
4 | Гарри Поттер и Кубок Огня | 2010 | 190 | Без иллюстраций | Д. Роулинг |
5 | Огненный бог марранов | 2009 | 200 | Цветные иллюстрации | А. Волков |
6 | Желтый туман | 1996 | 150 |
Вопросы:
Понятие логического выражения
Чаще всего для справки требуются не все записи, а только часть из них, удовлетворяющая какому-то условию. Это условие называется условием выбора. Например, из таблицы «Погода» требуется узнать, в какие дни шел дождь.
В командах СУБД условие выбора записывается в форме логического выражения.
Логическое выражение, подобно математическому выражению, выполняется (вычисляется), но в результате получается не число, а логическое значение: истина (true) или ложь (false). Логическая величина — это всегда ответ на вопрос, истинно ли данное высказывание.
4
Отношение «равно» истинно для двух символьных величин, если их длины одинаковы и все соответствующие символы совпадают. Следует учитывать, что пробел — это тоже символ. Например, отношение
АВТОР="Беляев А.Р."
не будет истинным ни для одной записи нашей таблицы, поскольку в таблице везде между фамилией и инициалами стоит один пробел, а в данном отношении — два.
8
Символьные величины можно сопоставлять и в отношениях <, >, <=, >=. Здесь упорядоченность слов (последовательностей символов) определяется по алфавитному принципу. Вот фрагмент из орфографического словаря, содержащий последовательно расположенные в нем слова:
квартет, компонент, конверт, конвульсия.
Между этими словами истинны следующие отношения:
квартет < компонент;
компонент < конверт;
конверт < конвульсия.
9
Значения полей типа «дата» при выполнении отношений сравниваются в соответствии с календарной последовательностью. Например, истинны отношения:
3/12/1998 < 23/04/2001;
24/09/2004 > 23/09/2004.
В некоторых СУБД используется тип «время» со следующим форматом значений: ЧЧ:ММ:СС (часы, минуты, секунды). При выполнении отношений учитывается хронологическая последовательность. Например, истинны отношения:
12:53:08 > 03:40:00;
23:05:12 < 23:05:13.
10
А теперь вернемся к приведенным выше примерам логических выражений. В примерах 7 и 8 нет никаких знаков отношений. Дело в том, что поля с именами ЦВЕТОВОДСТВО и ТАНЦЫ имеют логический тип. Поэтому в каждой записи их значения — это логические величины «ложь», «истина»
Одна величина логического типа — простейшая форма логического выражения. Следовательно, условие выбора может содержать в своей записи в том числе имя логического поля.
11
Запрос на выборку и простые логические выражения
Вот как выглядит команда запроса информации из БД «Погода» о датах всех дождливых дней:
. выбрать ДЕНЬ где ОСАДКИ = "дождь«
В итоговую справку попадут лишь те записи, для которых истинно условие поиска. Значит, получим:
12
Следующая команда позволяет вывести даты и влажность, соответствующие тем дням, когда атмосферное давление было выше 745 мм рт. ст.:
.выбрать ДЕНЬ, ВЛАЖНОСТЬ где ДАВЛЕНИЕ >745.
13
Команда запроса справки к БД «Домашняя библиотека»: вывести названия книг и фамилии и инициалы авторов, фамилии которых начинаются с буквы «О» и далее по алфавиту:
.выбрать АВТОР, НАЗВАНИЕ где АВТОР >= «О»
14
А теперь запрос к БД «Факультативы»: вывести список фамилий всех учеников, посещающих танцы:
.выбрать ФАМИЛИЯ где ТАНЦЫ.
Выражение, состоящее из имени поля логического типа или одного отношения, будем называть простым логическим выражением.
15
Итог урока:
Логическое выражение вычисляется подобно математическому, но может принимать всего два значения: истина (true) или ложь (false).
Простейшая форма логического выражения — одна величина логического типа.
Отношение — форма логического выражения. Существует шесть вариантов отношений: «равно», «не равно», «больше», «меньше», «больше или равно», «меньше или равно». Отношения применимы ко всем типам полей.
Условия выбора в командах СУБД записываются в виде логических выражений.
16
© ООО «Знанио»
С вами с 2009 года.