2010-12-11 20 views
0

ASCでの注文の合計NUMすることにより、製品Yと秩序を運ぶ都市Xでの店舗のリストを見つけるために:SQLは、私はこれらのテーブルを持っている

  • ASCのために注文の合計数で製品Y、及び
  • リスト記憶を運ぶ都市X
  • における店舗のリスト?
+0

XとYはそれぞれ都市と製品の '名前'または 'id'ですか? –

+2

これは宿題ですか? –

答えて

0

これを試してください。

「商品Yの注文総数」ではなく、「注文総数」を求めるだけです。必要な場合は、Ordersの結合に余分な述語を追加します。

0
select 
s.name, s.city, count(o.id) as numoforders 
from 
stores s join 
storesproducts sp on sp.store_id = s.id join 
products p on p.id = sp.product_id join 
order o on o.store_id = o.store_id 
where 
s.city = @city and p.id = @productid 
group by 
s.name, s.city 
order by 
3 desc 
+0

質問には、店舗、都市、注文数のリストは表示されません。また、注文はASC順であることを尋ねる。 –

1

都市に店舗を運ぶために店舗と商品を結合することは、テキストブックの結合のようなものです。 ストアでグループ化し、数え順に並べ替えるときの注文は、レポート作成では非常に一般的な操作です。

あなたが宿題をしているなら、少なくともTAがあなたに与えるほどの助けをあなたにくれました。これが仕事のためのものであれば、現在の状況について本当に心配するべきです:-)このクエリは、SQLを書き、テストすることを知っている人にとってはたったの1分ほどかかるでしょう。缶詰の回答を得るだ​​けでなく、これらのヒントに基づいて自分自身になるので、私はできる限り役立つように努めています!

最後に、なぜ「sql server」と「mysql」の両方にタグを付けましたか?これらは、2つの非常に異なるSQL実装です。