2016-09-23 7 views
0

は、私は結果がこのような何かを見て、クエリを実行しています:フィルタリング結果

  JOHN JILL GARY JANE JEFF MICK 
RED  | NOPE | OK | OK | OK | OK | OK | 
ORANGE | OK | OK | OK | OK | OK | OK | 
YELLOW | OK | OK | NOPE | OK | NOPE | OK | 
GREEN | OK | OK | OK | OK | OK | OK | 
BLUE | OK | OK | OK | OK | OK | OK | 
INDIGO | OK | NOPE | OK | OK | OK | OK | 
VIOLET | OK | OK | OK | OK | OK | NOPE | 

私はすべての列がOKのレコードをフィルタします。 1つ以上の列にNOPE結果が含まれている場合にのみ結果を表示したいと考えています。

私はこの<に、これと、それ=と私があきらめて、多くの異なるバリエーションを試しました。私は助けが必要です。おそらく、

+0

達成したいことは何ですか?何か不足していますか? –

+0

結果をフィルタリングする方法を探していたので、すべての列がOKだったので、Orange、Green、Blueは省略されました。私は1つ以上のNOPEが存在するレコードを見たいだけでした。 – bteague

答えて

1

フリップではなくすべてがOKであるところを探すwhere節はそれを行うべきです。

WHERE (NOT ((JOHN = 'OK') AND (JILL = 'OK') AND (GARY = 'OK') AND (JANE = 'OK') AND (JEFF= 'OK') AND (MICK = 'OK'))) 
+0

普遍的に役に立つと思うので、私はこの答えがよかったです。私が提供した答えは、このケースに非常に特有でした。私はそれが好きです。ありがとう、ダビデ。 – bteague

0

次のようになり句:列数が、その後一定であると仮定し

WHERE JOHN = 'NOPE' 
    OR JILL = 'NOPE' 
    OR GARY = 'NOPE' 
    OR JANE = 'NOPE' 
    OR JEFF = 'NOPE' 
    OR MICK = 'NOPE' 
+0

お試しいただきありがとうございます。私の知る限り、これはクエリ結果が 'NOPE'や 'OK'のように単純なものであれば有効です。実際には、「NOPE」は数十のうちの1つになります。そして、何十ものものが絶えず進化し、技術的に可能な限り、このようにクエリを構築することは不可能です。 – bteague

+0

@bteague WHERE ColumnName IN( 'value1'、 'value2')またはINNERを変数の一時表にジョインする複数のものがある場合は、それを使用します。 – scsimon

2

JOHN + JILL + GARY + JANE + JEFF + MICK <> 'okokokokokok'

関連する問題