显示交付最大交货的供应商名称(嵌套查询)?

时间:2010-09-01 08:07:52

标签: sql nested-query

我有一个包含供应商(S,SNAME,CITY)的表S,包含产品(P,PNAME,COLOR,WEIGHT,PRICE)和表P的表SP包含交付(S,P,QTY),其中S和P是表S和P的外键。

我被要求做的是

  

“显示已交付最大交货的供应商的名称(作为嵌套查询)。”

我将如何做到这一点?

编辑:删除了我声称工作正常的代码。事实并非如此。

2 个答案:

答案 0 :(得分:0)

select s.sname, sum(sp.qty)
  from s,
       sp,
       (select max(qty) val
          from (select sum(sp.qty) qty
                  from s, sp, p
                 where sp.p = p.p
                   and sp.s = s.s
                 group y s.sname)) max_q
 where sp.s = s.s
 group by s.sname
having sum(sp.qty) = max_q.val

答案 1 :(得分:0)

我找到了解决方案。我觉得太明显了。我无法弄清楚要使用的内部查询。

SELECT SNAME FROM S, SP WHERE S.S = SP.S AND QTY = (SELECT MAX(QTY) FROM SP)