0

Sサプライヤー(S、SNAME、CITY)を含むテーブル、P製品(P、PNAME、COLOUR、WEIGHT、PRICE)をSP含むテーブル、および配送(S、P、QTY)を含むテーブルがあります。ここで、SとPはテーブルへの外部キーです。 SとP。

私に頼まれたことは

「(ネストされたクエリとして)最大の配信を配信したサプライヤの名前を表示します。」

どうすればこれを行うことができますか?

編集:私が正常に機能していると主張したコードの一部を削除しました。そうではありませんでした。

4

2 に答える 2

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
于 2010-09-01T08:32:46.270 に答える
0

解決策を見つけました。あまりにも明白だと思います。どの内部クエリを使用するかを理解するのに苦労しました。

SELECT SNAME FROM S, SP WHERE S.S = SP.S AND QTY = (SELECT MAX(QTY) FROM SP)
于 2010-09-01T08:56:20.070 に答える