Frage

Gibt es eine Möglichkeit, um Daten auszuwählen, wo eine von mehreren Bedingungen, die auftreten, auf dem gleichen Feld?

Beispiel:Ich würde schreiben in der Regel eine Anweisung wie:

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

Gibt es eine Möglichkeit, stattdessen etwas sagen wie:

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

Jede Hilfe wird geschätzt.

War es hilfreich?

Lösung

Klar, der einfachste Weg ist dieser:

select foo from bar where baz in (1,2,3)

Andere Tipps

select * from TABLE where field IN (1,2,3)

Sie können auch bequem kombinieren Sie dies mit einer Unterabfrage, die gibt nur ein Feld:

    select * from TABLE where field IN (SELECT boom FROM anotherTable)

ODER:

SELECT foo FROM bar WHERE baz BETWEEN 1 AND 3

select * from TABLE where field in (1, 2, 3)

WHERE field IN (1, 2, 3)

Sie können immer noch verwenden Sie für

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

seine nur

select * from table where field in ('1','2','3')

während in ist eine Abkürzung für or und ich war mir nicht sicher, wie ich es kombinieren könnte in mit and, Ich habe es auf diese Weise

 SELECT * FROM table
 WHERE column1='x' AND (column2='y' OR column2='z');
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top