Выберите… где… ИЛИ

Есть ли способ выбрать данные, когда какое-либо одно из нескольких условий встречается в одном и том же поле?

Пример: я бы обычно написал такое заявление:

select * from TABLE where field = 1 or field = 2 or field = 3

Есть ли способ вместо этого сказать что-то вроде:

select * from TABLE where field = 1 || 2 || 3

Любая помощь приветствуется.

20.08.2008 12:58:51
7 ОТВЕТОВ
РЕШЕНИЕ

Конечно, самый простой способ заключается в следующем:

select foo from bar where baz in (1,2,3)
35
20.08.2008 12:59:51
select * from TABLE where field IN (1,2,3)

Вы также можете удобно комбинировать это с подзапросом, который возвращает только одно поле:

    select * from TABLE where field IN (SELECT boom FROM anotherTable)
11
20.08.2008 12:59:58

выберите * из таблицы, где поле в (1, 2, 3)

3
20.08.2008 13:00:01
WHERE field IN (1, 2, 3)
3
20.08.2008 13:00:01

ИЛИ:

SELECT foo FROM bar WHERE baz BETWEEN 1 AND 3
5
20.08.2008 13:05:32

Вы все еще можете использовать для

select *
from table
where field  = '1' or field = '2' or field = '3'

это просто

select * from table where field in ('1','2','3')
1
20.08.2008 13:08:03

в то время как inэто ярлык для orи я не был уверен , как я мог бы совместить inс and, я сделал это так

 SELECT * FROM table
 WHERE column1='x' AND (column2='y' OR column2='z');
0
27.01.2019 20:38:12