2017-05-05 3 views
0

質問:仕事J3に提供されていない部品の部品名を取得してください。 (のみを使用してサブクエリ)MySQLで新しく、私はほしい反対の結果を得ました

表情報:

サプライヤー{s_num、s_name、地位、都市}

SPJ {s_num、p_num、j_num、数量}

これは私が持っているものです:

SELECT pname, color 
FROM Part 
WHERE p_num = ANY (SELECT p_num 
        FROM Spj 
        WHERE j_num = 'j3'); 

明らかにここでは、ジョブj3に供給された部品が得られています。他のジョブは、各部分の少なくとも1を販売しているので私の結果は、部品表からすべての部分を示しています

SELECT pname, color 
FROM Part 
WHERE p_num = ANY (SELECT p_num 
        FROM Spj 
        WHERE j_num <> 'j3'); 

:私はこれまでそれを反転

私は、質問から結果j3で販売された部品を除外したいと考えています。あなたはこの製剤を使用したい場合は

答えて

0

SELECT pname, color 
FROM Part 
WHERE p_num NOT IN (SELECT p_num 
        FROM Spj 
        WHERE j_num = 'j3' 
        ); 

を私はINNOT INANYより理解しやすくSOME、およびALLを見つけます。

関連する問題