Читаем SQL за 24 часа полностью

Операции сравнения используются в операторах SQL для сравнивания отдельных значений и представляются знаками =, о, < и >. Эти операции предназначены соответственно для проверки равенства и неравенства значений, проверки выполнения отношений "меньше" и "больше" между ними. Суть операций сравнения раскрывается в следующих разделах.

Равенство

Операция проверки равенства в операторе SQL выясняет равенство одного значения другому. Для этого используется знак равенства (=). При выяснении равенства сравниваемые значения должны совпадать в точности, иначе запрос к базе данных не вернет никаких данных. Если сравниваемые значения равны, соответствующее выражение получает значение TRUE (Истина), иначе - FALSE (Ложь). Это логическое значение (TRUE/FALSE) используется системой для того, чтобы выяснить, должны ли соответствующие данные включаться в ответ запроса.

Операция = может использоваться отдельно или в комбинации с другими операциями. Вот пример, раскрывающий смысл операции проверки равенства.

Пример________________________________Значение______

WHERE SALARY = '20000' Зарплата равна 20000

Следующий запрос возвращает все строки данных с PROD_ID равным 2345.

SELECT *

FROM PRODUCTSJTBL

WHERE PROD_ID = '2345';

PROD_ID PROD_DESC COST

2345 ПОЛОЧКА ИЗ ДУБА 59.99

1 строка выбрана.


Неравенство

В противоположность равенству существует неравенство. В SQL для представления проверки неравенства используется знак о (комбинация знаков "меньше" и "больше"). В этом случае условие возвращает TRUE, если обнаруживается неравенство значений, и FALSE - если равенство.

Во многих из основных реализаций SQL эквивалентом знака операции о является комбинация ' = Уточните в документации, является ли эта комбинация применимой в вашем конкретном случае.

Пример________________________________Значение________

WHERE SALARY <> '20000' Зарплата не равна 20000

SELECT *

FROM PRODUCTS_TBL

WHERE PROD_ID <> '2345';

PROD_ID PROD_DESC COST

11235 КОСТЮМ ВЕДЬМЫ 29.99

222 ПЛАСТИКОВЫЕ ТЫКВЫ 7.75

13 ИСКУССТВЕННЫЕ ПАРАФИНОВЫЕ ЗУБЫ 1.1

90 ФОНАРИ 14.5

15 КОСТЮМЫ В АССОРТИМЕНТЕ 10

9 СЛАДКАЯ КУКУРУЗА 1.35

6 ТЫКВЕННЫЕ КОНФЕТЫ 1.45

87 ПЛАСТИКОВЫЕ ПАУКИ 1.05

119 МАСКИ В АССОРТИМЕНТЕ 4.95

1234 ЦЕПОЧКА ДЛЯ КЛЮЧЕЙ 5.95

10 строк выбраны.


„Меньше" и „больше"

Знаки < ("меньше") и > ("больше") можно использовать по отдельности, и в комбинации с другими операциями.


WHERE SALARY < '20000' Зарплата меньше 20000

WHERE SALARY > '20000' Зарплата больше 20000

В первом случае любое значение, меньшее 20000, вернет TRUE, а равное или большее 20000 - FALSE. Операция "больше" является противоположной к операции "меньше".

SELECT *

FROM PRODUCTS_TBL

WHERE COST > 20;

PROD_ID PROD_DESC COST

11235 КОСТЮМ ВЕДЬМЫ 29.99

2345 ПОЛОЧКА ИЗ ДУБА 59.99

2 строки выбраны.

В следующем примере обратите внимание на то, что значение 24.99 не включено в вывод результата запроса.

SELECT *

FROM PRODUCTS_TBL

WHERE COST < 24.99;

PROD_ID PROD_DESC COST

222 ПЛАСТИКОВЫЕ ТЫКВЫ 7.75

13 ИСКУССТВЕННЫЕ ПАРАФИНОВЫЕ ЗУБЫ 1.1

90 ФОНАРИ 14.5

15 КОСТЮМЫ В АССОРТИМЕНТЕ 10

9 СЛАДКАЯ КУКУРУЗА 1.35

6 ТЫКВЕННЫЕ КОНФЕТЫ 1.45

87 ПЛАСТИКОВЫЕ ПАУКИ 1.05

119 МАСКИ В АССОРТИМЕНТЕ 4.95

1234 ЦЕПОЧКА ДЛЯ КЛЮЧЕЙ 5.95

9 строк выбраны.


Примеры комбинирования операций сравнения

Знак равенства можно комбинировать со знаками "меньше" и "больше", как в следующих примерах.


WHERE SALARY <= '20000' Зарплата меньше или равна 20000

WHERE SALARY >= '20000' Зарплата больше или равна 20000

"Меньше или равно" включает значение 20000 и все значения, меньшие 20000. Любое такое значение вернет TRUE, а любое значение, большее 20000, вернет FALSE. Подобным образом определяется "больше или равно". В данном случае, в отличие от строгих неравенств, значение 20000 возвращает TRUE.

SELECT *


WHERE COST <= 24.99;

PROD__ID PROD_DESC COST

11235 КОСТЮМ ВЕДЬМЫ 9.99

222 ПЛАСТИКОВЫЕ ТЫКВЫ 7.75

13 ИСКУССТВЕННЫЕ ПАРАФИНОВЫЕ ЗУБЫ 1.1

90 ФОНАРИ 14.5

15 КОСТЮМЫ В АССОРТИМЕНТЕ 10

9 СЛАДКАЯ КУКУРУЗА 1.35

б ТЫКВЕННЫЕ КОНФЕТЫ 1.45

87 ПЛАСТИКОВЫЕ ПАУКИ 1.05

119 МАСКИ В АССОРТИМЕНТЕ 4.95

1234 ЦЕПОЧКА ДЛЯ КЛЮЧЕЙ 5.95

10 строк выбраны.


Логические операции

Логические операции в SQL задаются ключевыми словами, а не символами. Ниже мы рассмотрим следующие логические операции.

• IS NULL . EXISTS

• BETWEEN

• UNIQUE

• IN

• ALL И ANY

• LIKE


IS NULL

Ключевое слово is NULL используется для проверки равенства данного значения значению NULL. Например, если требуется узнать, кто из сотрудников не имеет пейджера, можно искать значения NULL в столбце PAGER таблицы EMPLOYEEJTBL.

Вот пример проверки равенства значения значению NULL.


WHERE SALARY is NULL Для зарплаты не задано значение

Вот пример, в котором значение NULL не будет найдено.


WHERE SALARY = NULL Зарплата имеет значение, равное

строке символов N-U-L-L

Перейти на страницу:

Похожие книги

Adobe InDesign CS3
Adobe InDesign CS3

Книга посвящена верстке и макетированию в программе Adobe InDesign CS3. Помимо того что в ней описываются возможности программы, рассматриваются также принципы и традиции верстки, приводятся примеры решения типичных задач. Все это позволит читателю не только овладеть богатым инструментарием программы, но и грамотно применять его.Материал книги разделен на логические части: теоретические сведения, инструментарий программы, решение задач, – а также рассчитан на два уровня подготовки читателей – начинающих и опытных пользователей, что выгодно отличает книгу от других изданий. Это позволит применять ее как новичкам для знакомства с программой, так и пользователям со стажем для пополнения своих знаний.

Владимир Гавриилович Завгородний , Владимир Завгородний

Программирование, программы, базы данных / Программное обеспечение / Книги по IT