'简单'的SQL查询。不使用子查询重写它

时间:2010-12-18 03:05:10

标签: sql

我应该在不使用子查询的情况下重写SQL查询。 我使用子查询的解决方案是:

SELECT * from parts WHERE weight > (SELECT weight from parts WHERE name = 'tape-drive');

我的表'parts'的简化版本:

NAME WEIGHT
----------------------
line-printer 520
tape-drive 100
line-printer 520
tape-drive 100
byte-soap 75
card-punch 120

我已经考虑了很长一段时间,我无法弄明白。 帮助将受到关注。

2 个答案:

答案 0 :(得分:3)

回答,因为我不能经常这样做;

SELECT P1.* 
  from parts P1
  join parts P2 on
       P1.weight > P2.weight
 WHERE P2.name = 'tape drive'

答案 1 :(得分:0)

我不打算为你做功课,但我会给你推。您想在零件表上使用自我INNER JOIN。