Фильтрация
Бывают случаи, когда требуется работать со всеми строками таблицы,
например:
•
Удаление всех данных таблицы для того,
чтобы загрузить новые
данные из другого источника.
•
Изменение всех строк таблицы после добавления нового столбца.
•
Извлечение всех строк из таблицы очереди сообщений.
В подобных случаях SQLвыражениям не нужен блок
where
, поскольку
нет необходимости исключать из рассмотрения какиелибо строки.
Однако чаще всего требуется сужать фокус и
работать с подмножест
вом строк таблицы. Поэтому все SQLвыражения для работы с данны
ми (кроме выражения
insert
) включают
необязательный блок
where
,
где размещаются всевозможные фильтры для ограничения числа
строк, подвергаемых воздействию SQLвыражения. Кроме того, в вы
ражение
select
входит блок
having
, в
который могут быть включены
условия фильтрации, относящиеся к группам данных. В этой главе
изучаются различные
типы условий фильтрации, которые могут при
меняться в блоках
where
выражений
select
,
update
и
delete
.
Оценка условия
Блок
where
может содержать
одно или более условий, разделенных опе
раторами
and
и
or
. При использовании только оператора
and
строка бу
дет включена в результирующий набор в случае истинности (
True
) всех
условий для нее.
Рассмотрим следующий блок
where
:
WHERE title = 'Teller' AND start_date < '20030101'
Исходя из этих двух условий, из рассмотрения будет исключен любой
сотрудник, не являющийся операционистом
или работающий в банке
Оценка условия
73
начиная с 2003 года. В данном примере используется только два усло
вия, но
если условия в блоке
where
3>2>1>
Достарыңызбен бөлісу: