Оператор in дает возможность использовать два или более выражений в запросе на поиск. Результатом этого условия будет истина, если значение соответствующего столбца равняется одному из выражений, указанных в предикате in (пример 6.9).
Оператор in эквивалентен серии условий, связанных одним или более операторами or. Количество операторов or равняется количеству выражений в операторе in минус единица.
Оператор in может быть использован вместе с логическим оператором not, как показано в примере 6.10. В этом случае запрос отыскивает строки, в которых не присутствуют значения, заданные в списке, среди значений указанного столбца.
В отличие от оператора in, который задает каждое индивидуальное значение, оператор between задает диапазон, в котором указывается нижняя и верхняя границы значений. Использование оператора иллюстрируется в примере 6.11.
Оператор between выполняет поиск среди всех значений диапазона, включая граничные значения; т. е. значения могут находиться между граничными значениями или равняться им.
Оператор between логически эквивалентен двум индивидуальным сравнениям, которые соединены логическим оператором and. Пример 6.11 эквивалентен примеру 6.12.
Как и оператор between, оператор not between может быть использован для поиска значений столбца, которые не находятся в заданном диапазоне. Оператор between может быть также применен и к столбцам, имеющим строковый тип данных и тип данных даты.
В примере 6.13 показаны два оператора select, по-разному записанных, но выполняющих один и тот же поиск данных.