Операторы сравнения SQL

Резюме: в этой статье вы узнаете об операторах сравнения SQL и о том, как использовать их для формирования условий фильтрации данных в MySQL, MS SQL и т.д..

Сравнение в SQL предназначено, чтобы проверить, являются ли два выражения одинаковыми. Следующая таблица иллюстрирует операторы сравнения в SQL:

ОператорЗначение
=Равно
<> (!=)Не равно
<Меньше, чем
>Больше чем
<=Меньше или равно
>=Больше или равно

Результат применения оператора в блоке операндов сравнения SELECT дает на выходе один из трех вариантов значений типа Boolean: это true (ИСТИНА), false (ЛОЖЬ) и unknown (НЕОПРЕДЕЛЕННОЕ).

Оператор «равно» (=) «equal to»

Это условие позволяет сравнить, являются ли два сравниваемых выражения равными:

equality of two expressions

Он возвращает true, если значение слева идентично значению справа; в противном случае он возвращает false.

Например, следующий запрос находит сотрудника, чья фамилия Химуро:

statement finds the employee whose last name is Himuro

result statement finds the employee whose last name is Himuro

В этом примере запрос ищет строку Himuro в столбце last_name таблицы employees.

Обратите внимание, что оператор equal нельзя использовать для сравнения NULL значений. Например, цель следующего запроса — найти всех сотрудников, у которых нет номеров телефонов:

query is to find all employees who do not have phone numbers

Однако он возвращает пустой набор результатов.

following expression always returns false

Просто запомните что если сравнить что угодно с NULL результат будет всегда false. Даже если сравнить NULL и NULL на выходе получите false.

Для сравнения NULL значений вместо этого используется IS NULL:

use the IS NULL operator

result use the IS NULL operator

Оператор «не равно» (<>) «not equal to»

Not equal to (<>) сравнивает два НЕ NULL значения и возвращает true, если левое сравниваемое отличается от того что справа; в противном случае он возвращает false.

not equal to operator

Например, следующий запрос возвращает всех сотрудников, чей идентификатор отдела не равен 8:

statement returns all employees whose department id is not 8

result statement returns all employees whose department id is not 8

Оператор AND можно использовать для объединения нескольких выражений, в которых используется оператор (<>). Например, следующее выражение находит всех сотрудников, чей идентификатор отдела не равен восьми и десяти:

2 statement returns all employees whose department id is not 8

2 result statement returns all employees whose department id is not 8

Оператор «больше чем» (>) «greater than»

Оператор greater than (>) сверяет два значения NOT NULL и возвращает true, если левый операнд больше правого; в противном случае возвращен будет false.

Greater than operator

Например, чтобы найти сотрудников, чья зарплата больше 10 000, вы используете оператор greater than в предложении FROM WHERE следующим образом:

find the employees whose salary is greater

result find the employees whose salary is greater

Вы можете комбинировать выражения, в которых используются различные операторы сравнения, с помощью оператора AND или OR. Например, следующее выражение находит сотрудников в отделе 8, чья зарплата превышает 10 000:

 finds employees in department 8 and have the salary greater than 10,000

result finds employees in department 8 and have the salary greater than 10,000

Оператор «меньше чем» (<) «less than»

Обратный предыдущему. Результат будет истинным, если левое сравниваемое значение меньше значения правого операнда; в противном случае результат будет ложным.

Ниже показан синтаксис оператора less than:

Less than operator

Например, приведенный ниже запрос возвращает всех сотрудников, чья зарплата меньше 10 000:

example Less than operator

result example Less than operator

Оператор «больше или равно» (>=) «greater than or equal to»

Greater than or equal (>=) сравнивает два ненулевых выражения. Результат будет истинным, если левое выражение оценивается в значение, которое больше, чем значение правого выражения.

Ниже показан синтаксис оператора (>=):

Greater than or equal operator

Например, следующее выражение находит сотрудников, чья зарплата больше или равна 9 000:

example Greater than or equal operator

result example Greater than or equal operator

Оператор «меньше или равно» (<=) «less than or equal to»

Less than or equal to предназначен для сверки двух NOT NULL значений. Он вернет true, если левое выражение имеет значение меньше или приравнено значению правого выражения; в противном случае возвращается false.

Ниже показан синтаксис оператора (<=):

Less than or equal to operator

Например, следующее выражение находит сотрудников, чья зарплата меньше или равна 9 000:

result example Less than or equal to operator

Сводка

В этом уроке вы узнали, как использовать операторы сравнения для формирования выражений сравнения для фильтрации данных на основе заданного условия. LIKE в какой то степени тоже можно отнести к этой статье, но он будет рассмотрен в одной из следующих подробнее. То же относится к BETWEEN для сравнения временных диапазонов.

Видео по теме

Предыдущая статья: Условие WHERE

Следующая статья:

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: