2012-03-22 107 views
1

我需要重寫這個查詢,我不允許使用子查詢。我需要選擇比車輪重的部件的名稱和顏色。沒有子查詢的sql查詢

SELECT name, color 
FROM parts 
WHERE weight > (SELECT weight FROM parts WHERE name="wheel"); 

這是表:

PARTS

ID NAME COLOR  WEIGHT  
1  wheel black  100 
2  tire black  50 
3  gear red  20 

在此先感謝

+0

這功課? – Ben 2012-03-22 23:24:40

+0

不,它不是:) – mrjasmin 2012-03-22 23:30:19

+0

@Ben大概 - 它似乎來自標準演示數據庫 – 2012-03-22 23:35:09

回答

2

與自身

SELECT parts_a.name, parts_a.color 
FROM parts parts_a, parts parts_b 
WHERE parts_a.weight > parts_b.weight 
    AND parts_b.name = "wheel" 
+0

謝謝你的回答:) – mrjasmin 2012-03-22 23:32:02

0

您可以加入做加入。

SELECT a.name, a.color 
FROM parts as a left join parts as b on a.ID=b.ID 
WHERE a.weight > b.weight 
AND b.name = "wheel" 
+0

會不會只返回輪排? – 2012-03-22 23:51:41

-1

我應該記下此查詢,而無需使用子查詢 SELECT C.pid 從目錄C,供應商小號 WHERE S.sname = '約塞米蒂深水' AND C.sid = S.sid 和C.成本≥ALL(選擇C2.cost FROM目錄C2,供應商S2 其中S2.sname ='優勝美地假'和C2.sid = S2.sid)

+0

我不確定這是一個特別的[很好的答案](http://stackoverflow.com/help/how-to-answer)。 – 2016-10-11 00:31:06