- •Iso (международной организацией по
- •2 Понимание sql
- •Что такое - реляционная база данных?
- •Порядок строк произволен
- •4 Понимание sql ___________________________________________________________________
- •Идентификация строк ( первичные ключи )
- •Столбцы именуются и нумеруются
- •8 Понимание sql
- •************** Работа с sql **************
- •Sql : обзор
- •Что делает ansi ?
- •Интерактивный и вложенный sql
- •14 Понимание sql
- •Субподразделения sql
- •16 Понимание sql
- •Sql несогласованности
- •Что такое - пользователь?
- •18 Понимание sql
- •Условия и терминология
- •************** Работа с sql **************
- •24 Понимание sql
- •26 Понимание sql
- •Переупорядочение столбца
- •28 Понимание sql
- •Параметры distinct
- •30 Понимание sql
- •32 Понимание sql
- •************* Работа с sql ***************
- •38 Понимание sql
- •40 Понимание sql
- •42 Понимание sql
- •44 Понимание sql
- •Использование специальных операторов в условиях
- •50 Понимание sql
- •52 Понимание sql
- •54 Понимание sql
- •56 Понимание sql
- •************** Работа с sql **************
- •Обобщение данных с помощью агрегатных функций
- •64 Понимание sql
- •66 Понимание sql
- •Включение дубликатов в агрегатные функции
- •Предложение group by
- •68 Понимание sql
- •Предложение having
- •70 Понимание sql
- •72 Понимание sql
- •************** Работа с sql **************
- •Формирование выводов запросов
- •Помещение текста в вашем выводе запроса
- •78 Понимание sql
- •80 Понимание sql
- •82 Понимание sql
- •Упорядочение вывода по номеру столбца
- •84 Понимание sql
- •************** Работа с sql **************
- •Запрашивание многочисленых таблиц также как одной
- •90 Понимание sql
- •92 Понимание sql
- •94 Понимание sql
- •************** Работа с sql **************
- •Объединение таблицы с собой
- •Псевдонимы
- •100 Понимание sql
- •Устранение избыточности
- •102 Понимание sql
- •Больше псевдонимов
- •104 Понимание sql
- •106 Понимание sql
- •************** Работа с sql **************
- •Вставка одного запроса внутрь другого
- •112 Понимание sql
- •114 Понимание sql
- •116 Понимание sql
- •In определяет набор значений, одно из которых должно совпадать с другим
- •118 Понимание sql
- •In является подходящим, если запрос может ограниченно производить одно
- •120 Понимание sql
- •122 Понимание sql
- •*************** Работа с sql *************
- •Соотнесенные подзапросы
- •130 Понимание sql
- •132 Понимание sql
- •Соотнесенные подзапросы в предложении having
- •134 Понимание sql
- •*************** Работа с sql *************
- •Использование оператора exists
- •140 Понимание sql
- •142 Понимание sql
- •144 Понимание sql
- •146 Понимание sql
- •************** Работа с sql **************
- •Использование оператора exists
- •152 Понимание sql
- •154 Понимание sql _____________________________________________________________________
- •156 Понимание sql
- •158 Понимание sql
- •160 Понимание sql
- •162 Понимание sql
- •Использование count вместо exists
- •166 Понимание sql
- •************** Работа с sql **************
38 Понимание sql
______________________________________________________________________
ГЛ. 4
=============== SQL Execution Log ============
| |
| SELECT * |
| FROM Customers |
| WHERE rating > 200; |
| ============================================= |
| snum cname city rating snum |
| ----- -------- -------- ----- ------ |
| 2004 Crass Berlin 300 1002 |
| 2008 Cirneros San Jose 300 1007 |
=============================================
Рисунок 4.1: Использование больше чем (>)
Существуют другие, более сложные, операторы Буля ( типа " исключенный
или " ), но они могут быть сформированы из этих трех простых операторов
- AND, OR, NOT.
Как вы можете понять, Булева верня / неверная логика - основана на цифровой
компьютерной операции; и фактически, весь SQL( или любой другой язык )
может быть сведен до уровня Булевой логики.
Операторы Буля и как они работают:
* AND берет два Буля ( в форме A AND B) как аргументы и
оценивает их по отношению к истине, верны ли они оба.
* OR берет два Буля ( в форме A OR B) как аргументы и
оценивает на правильность, верен ли один из них.
* NOT берет одиночный Булев ( в форме NOT A) как аргументы
и заменяет его значение с неверного на верное или верное на
неверное.
Связывая предикаты с операторами Буля, вы можете значительно
увеличить их возможности. Предположим вы хотите видеть всех
заказчиков в San Jose которые имеют оценку(рейтинг) выше 200:
SELECT *
FROM Customers
WHERE city = " San Jose'
AND rating > 200;
ИСПОЛЬЗОВАНИЕ РЕЛЯЦИОННЫХ И БУЛЕВЫХ ОПЕРАТОРОВ
ЧТОБЫ СОЗДАВАТЬ БОЛЕЕ СЛОЖНЫЕ ПРЕДИКАТЫ 39
______________________________________________________________________
Вывод для этого запроса показан на Рисунке 4.2. Имеется только один
заказчик который удовлетворяет этому условию.
Если вы же используете OR вы получите всех заказчиков которые
находились в San Jose или(OR) которые имели оценку выше 200.
=============== SQL Execution Log ============
| |
| SELECT * |
| FROM Customers |
| WHERE city = 'San Jose' |
| AND rating > 200; |
| ============================================= |
| ñnum cname city rating snum |
| ------ -------- -------- ---- ----- |
| 2008 Cirneros San Jose 300 1007 |
=============================================
Рисунок 4.2: SELECT использующий AND
SELECT *
FROM Customers
WHERE city = " San Jose'
OR rating > 200;
Вывод для этого запроса показывается в Рисунке 4.3.
NOT может использоваться для инвертирования значений Буля. Имеется
пример запроса с NOT:
SELECT *
FROM Customers
WHERE city = " San Jose'
OR NOT rating > 200;
Вывод этого запроса показывается в Рисунке 4.4.