2016-10-22 49 views
-2

因此,例如行我有兩個表,訂單和QualifiedOrder在關係代數SQL如何選擇,是不是在另一個表

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

'訂購抗結合QualifiedOrder'? – MatBailie

回答

1

運行以下命令,請更改爲任何其他名稱ORDEROrder作爲ORDER是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

相關問題