ただの練習問題ですが、少し混乱します。誰かがこれを片付けることができれば幸いです。
ProductというDBとPCという別のDBがあります。「プリンタも製造しているすべてのメーカーのPCの平均ハードディスクサイズを見つける」というクエリを実行しようとしています。
これが私のコードです:
SELECT maker, AVG(hd)
FROM pc, product
WHERE pc.model=product.model
GROUP BY maker
HAVING COUNT(type='PR')>=1
typeは、printer(PR)ラップトップまたはPCを表すProductの属性ですが、HAVINGステートメントは、プリンターを製造するメーカーだけを特定しているようには見えません。代わりに、Productテーブルの各メーカーのAVGを取得します。
アップデート
関係は次のようになります。
Product(maker, model, type)
PC(model, hd, speed, ram, price)
Printer(model, color, type, price)