SQLсервер в Linux -самостоятельное освоение пакета

       

Объединение условий в секции WHERE



Листинг 4.33. Объединение условий в секции WHERE

booktown=# SELECT title FROM books

booktown-# WHERE subject_id = 4

booktown-# AND author_id = 7805;

title

Programming Python

Learning Python

(2 rows)

booktown=# SELECT title FROM books

booktown-# WHERE subject_id = 4

booktown-# AND author_id = 0;

title

Dynamic Anatomy

Practical PostgreSQL

Programming Python

Learning Python

Perl Cookbook

(5 rows)

Первая команда SELECT в листинге 4.33 содержит два условия, объединенных логическим оператором AND. Первое условие проверяет, что книга посвящена компьютерным технологиям (поле subject_id равно 4), а второе — что автором книги является Марк Лутц (поле author_id равно 7805). Объединение условий уменьшает объем итогового набора — в него входят всего две записи, удовлетворяющие обоим условиям.

Во второй команде SELECT в листинге 4.33 прежнее первое условие (книги по компьютерной тематике) объединяется со вторым условием: книги по искусству (поле subject_id равно 0). В результате объем итогового набора увеличивается до пяти записей, каждая из которых удовлетворяет хотя бы одному из этих условий.

Количество условий, объединяемых в секции WHERE, не ограничено, хотя при наличии двух и более условий обычно выполняется группировка при помощи круглых скобок, наглядно демонстрирующая логическую связь между условиями.



Содержание раздела