2009-02-16 9 views
0

J'ai une vue de données où les colonnes interressantes sont length, height, color1 et color2 où color1 et color2 peuvent être jaune, rouge, bleu, noir, blanc ou vert . Quelle est la meilleure façon d'appliquer un filtre où je reçois les lignes avec une certaine longueur et hauteur mais avec seulement les couleurs rouge, bleu et vert?DataView.RowFilter, plusieurs valeurs possibles sur plusieurs colonnes

Le filtre ci-dessous se sent un peu « laid » lorsque les couleurs possibles se développent:

"length > 10 AND height > 10 AND (color1 = 'red' OR color1 = 'blue' OR color1 = 'green') AND (color2 = 'red' OR color2 = 'blue' OR color2 = 'green')"

Ou est-ce la seule/façon la plus simple?

Répondre

8

Malheureusement, c'est la nature de "style SQL" requêtes :)

La clause IN peut faire cette requête simple:

"length > 10 AND height > 10 AND color1 IN ('red', 'blue', 'green') AND color2 IN ('red', 'blue', 'green')" 
+0

Il semble beaucoup plus facile à lire. Je vous remercie. –

Questions connexes