Главная SQL Between
E-mail Печать PDF

BETWEEN - данный оператор используется в условии WHERE для выбора данных между двумя значениями. Данные могут быть: тестом, числами, даты.

Синтаксис SQL BETWEEN

1
2
3
4
SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2

Пример 1

Есть таблица "Persons":

P_Id LastName FirstName Address City
1 Hansen Ola Timoteivn 10 Sandnes
2 Svendson Tove Borgvn 23 Sandnes
3 Pettersen Kari Storgt 20 Stavanger

Итак, теперь мы хотим выбрать всех лиц, фамилии которых расположены между "Hansen" и "Pettersen" из таблице выше. Заметьте, выборка будет происходить в алфавитном порядке.

Для этого используем такой запрос:

1
2
3
SELECT * FROM Persons
WHERE LastName
BETWEEN 'Hansen' AND 'Pettersen'

Результат запроса:

P_Id LastName FirstName Address City
1 Hansen Ola Timoteivn 10 Sandnes

Note - Замечание: оператор BETWEEN работает по-разному в разных базах данных.

В некоторых базах данных, лица с фамилиями "Hansen"и"Pettersen" не будут показаны при получении результата, поскольку оператор BETWEEN вернет только значения между указанными в запросе.

В некоторых базах данных, лица с фамилиями "Hansen"и"Pettersen" будут показаны при получении результата.

В других базах данных, лица с фамилией "Hansen" будут в списке, но "Pettersen" не будет (как в примере выше), потому что оператор выбирает между двумя полями, но в результате показывает только первое указанное значение без второго.

Note Совет: Перед использованием оператора BETWEEN в базе данных, необходимо проверить, как база данных реагирует на запросы подобного типа.

Пример 2

Итак, теперь мы хотим выбрать всех лиц, фамилии которых не расположены между "Hansen" и "Pettersen" из таблице "Persons".

1
2
3
SELECT * FROM Persons
WHERE LastName
NOT BETWEEN 'Hansen' AND 'Pettersen'

Результат запроса:

P_Id LastName FirstName Address City
2 Svendson Tove Borgvn 23 Sandnes
3 Pettersen Kari Storgt 20 Stavanger

Комментарии

 
+2 #1 Александр Викторович 2010-08-03 18:55 В первом примере между Хансеном и Петтерсоном находится Свендсон Цитировать
 
 
+2 #2 Алексей Леонидович 2010-08-16 17:49 Цитирую Александр Викторович:
В первом примере между Хансеном и Петтерсоном находится Свендсон

Пример — для знающих алфавит. S идёт после P и после H, то есть, никак не между H и P.
Цитировать
 
 
+2 #3 Шелест Константин 2010-10-28 18:17 Немного криво, а вообще спасибо!!! Цитировать
 
 
+2 #4 Йопер 2010-12-28 16:20 Цитирую Алексей Леонидович:
Цитирую Александр Викторович:
В первом примере между Хансеном и Петтерсоном находится Свендсон

Пример — для знающих алфавит. S идёт после P и после H, то есть, никак не между H и P.


Тогда статья неадекватная!
Цитировать
 
 
+1 #5 Lektra 2011-01-26 19:10 Статья адекватная, нужно было читать комментарии после примера внимательнее. Там же написано, что вывод будет зависеть от базы данных( в разных версиях бд, разный ответ). Цитировать
 
 
0 #6 SL 2011-06-06 11:28 Заметьте, выборка будет происходить в алфавитном порядке.
речь о выборке, так что всё нормально.
Цитировать
 

Авторизация

Nice Ajax Poll

Какое из моих расширений самое лучшее?

Статистика



Реклама