2016-08-13 6 views
-1

を隠し、私は以下のようにテーブルを持っているところのテーブルからデータを取得:条件が真の場合、関連するすべての行が

-------------------------------------- 
    id | product_id | value 
-------------------------------------- 
    1  |  1  |  1 
    2  |  1  |  2  
    3  |  1  |  3 
    4  |  2  |  1 
    5  |  2  |  2 

今、私は条件、値= 3が、その後はずの結果どこにデータを選択した場合ことをしたいです!値= 3が含まれているため、商品IDが1の行はありません

ご理解ください。

+0

期待される出力を表示できますか? –

答えて

1

SELECT * FROM mytable WHERE product_id NOT IN (SELECT product_id FROM mytable WHERE value=3)

この中にネストされたクエリがあります。ネストされたクエリでは、値3のすべてのproduct_idが見つかります。これは1を返します。返されたクエリにNOTの商品が見つかりました。したがって、product_idは1ではありません。

このクエリは、IDが4と5の行を返します。

+0

ありがとう、それは動作します... –

関連する問題