Question

Existe-t-il un moyen de sélectionner des données pour lesquelles l'une des multiples conditions se produit sur le même champ ?

Exemple:J'écrirais généralement une déclaration telle que :

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

Existe-t-il un moyen de dire quelque chose comme :

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

Toute aide est appréciée.

Était-ce utile?

La solution

Bien sûr, le moyen le plus simple est le suivant :

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

Autres conseils

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

Vous pouvez également facilement combiner cela avec une sous-requête qui ne renvoie qu'un seul champ :

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

OU:

SELECT foo FROM bar WHERE baz BETWEEN 1 AND 3

sélectionnez * dans TABLE où le champ dans (1, 2, 3)

WHERE field IN (1, 2, 3)

Vous pouvez toujours l'utiliser pour

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

c'est juste

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

alors que in est un raccourci pour or et je ne savais pas comment combiner in avec and, je l'ai fait de cette façon

 SELECT * FROM table
 WHERE column1='x' AND (column2='y' OR column2='z');
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top