2016-10-22 12 views
-2

だから、例えば私は2つのテーブル、受注及びQualifiedOrderどのように私は別のテーブルにない行を選択することができます

ORDER

Order# | Customer# 
------------------ 
16  | 7 

23  | 9 

21  | 2 

59  | 5 

を持ってQualifiedOrder

QualifiedOrder# | DateApplied 
----------------------------- 
23    | 9/10/16 

21    | 10/2/15 

修飾されていない注文をリストする方法は? (リストQualifiedOrderテーブルにないためテーブル内のデータのみ)リレーショナル代数で

+0

あなたが試したことを示してください。たとえば、Order#が注文番号である行は何ですか? QualifiedOrder#が修飾された注文の注文番号である行は何ですか? Order#が認定オーダーの注文番号である行は何ですか? Order#&Customerが受注番号と顧客である行は何ですか? PS関係演算子は、テーブルから別のテーブルにない行をどのように与えますか? – philipxy

+1

なぜsqlまたはmysqlにタグを付けるのですか?あなたのタイトルでSQLは何をしていますか? – philipxy

+0

'Order antijoin QualifiedOrder'? – MatBailie

答えて

1

以下のコマンドを実行し、ORDERなどの他に名前ORDEROrderを変更してくださいは、SQLのキーワードです。結合を使用して

SELECT 
    Order 
FROM 
    ORDER 
WHERE 
    Order not IN (
     SELECT 
      QualifiedOrder 
     FROM 
      QualifiedOrder 
    ) 

別の方法:

SELECT 
    ORDER.Order 
FROM 
    ORDER 
JOIN 
    QualifiedOrder 
ON 
    ORDER.Order <> QualifiedOrder.QualifiedOrder 

とリレーショナル代数に最後のクエリを変更してみてください。

+0

リレーショナル代数はどうやって書くのですか? – student001

+0

@ student001 http://www.databasteknik.se/webbkursen/relalg-lecture/それを確認してください – sunkuet02

+0

最初のクエリはリレーショナル*計算* SQLですか? – onedaywhen

関連する問題