
いつもお世話になっています。
オラクルではないのですが、SQLの質問が多く感じたため、質問させていただきました。
タイトルの通り、相関サブクエリはグループ化した状態で行えるのか教えていただきたいんです。
課題は、売上表(Sales)から、売上数量(Quantity)の平均の10倍よりも売上数量(Quantity)の最大の方が大きい商品IDを見つけ出す。というものです。
考えたSQLは
SELECT
__S1.ProductID
FROM
__Sales AS S1
GROUP BY
__ProductID
HAVING
__AVG(Quantity) * 10
< (SELECT
__MAX(Quantity)
FROM
__Sales AS S2
GROUP BY
__ProductID
HAVING
__S1.ProductID = S2.ProductID)
です。考え方として
相関サブクエリで、現在の商品ID(HAVING S1.ProductID = S2.ProductIDのところ)の商品数量の最大値を比較として返そうと思いましたが、どうもうまくいきません。
こういった相関サブクエリは作れないのでしょうか?
No.1ベストアンサー
- 回答日時:
・課題の解決策に相関副問い合わせが必要か?
・仮に、相関副問い合わせが必要だとして、相関条件が適切か?
今の課題であれば、相関服問い合わせなど必要ない。
もっと課題が複雑で、相関副問い合わせを使わざるおえない課題でも、他の書き方を考えた方が
合理的な問い合わせになるはず。
ということで、最初から考え直した方がいいでしょう。
>こういった相関サブクエリは作れないのでしょうか?
書けても良さそうな気もしますが、書けなくても問題にならないのでしょうね。
同様の相関問い合わせは、他に幾らでも書き換えが可能なので。
例えば、問い合わせが2つの表だった場合、多くの人は内部結合で対応すると思いますよ。
でも、今回のケースでは、サブクエリも内部結合も必要ありませんが。
回答ありがとうございます。
相関副問い合わせの課題だったのですが、使わなくてもいいのですね・・。
まだまだ修行の身で、どの手法を使ったらよいか選択が難しいです。
相関副問い合わせではない方法でちょっと考えてみようと思います。
スピードも遅いと聞きますし。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで漢字名称を都道府県や市区...
-
このSQLあってますか?教えてく...
-
「テーブルに座って……」という...
-
オーダーの覚え方について
-
Accessでデータシートに同じデ...
-
会社の飲み会の幹事になり、座...
-
SQLにて指定日付より前、かつ最...
-
SQLでSUMなどの関数でデータが...
-
他のデータベースとのテーブル結合
-
外部キーだけのテーブル(主キ...
-
クリスタルレポートで検索条件...
-
SQL*LoaderでCSVから指定した列...
-
結合テーブルでINSERTする方法...
-
今度同じサークルだった女の子...
-
ACCESS アクセスで他のデータ...
-
論理名とコメント構文(?)について
-
Access2000の削除クエリで消し...
-
テーブルにcsvファイルをインポ...
-
SQL Server management studio ...
-
Oracleで上書きImportはできま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLです。こんな感じですか?あ...
-
うまくいきません教えてくださ...
-
SQLで漢字名称を都道府県や市区...
-
このSQLあってますか?教えてく...
-
第4正規形について
-
SQL CASE文に制御について
-
Access 出荷管理簿を作りたい...
-
グループごとの最高得点者一覧...
-
下記の問合せを行うクエリを、P...
-
access結合クエリを編集可能に
-
下記の問合せを行うクエリを、P...
-
select文のサマリー
-
SELECT文内での条件分岐
-
ACCESS2010 SQL 結合キーにつ...
-
accessで在庫管理
-
相関サブクエリの中で、グルー...
-
update文におけるwhereとjoinの...
-
3つの表の外部結合
-
サブクエリを使用せずにLEFT JO...
-
「テーブルに座って……」という...
おすすめ情報