![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
いつもお世話になっています。
オラクルではないのですが、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で質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Visual Basic(VBA) 【ExcelVBA】Powerクエリーでいうピボット解除と同じ処理をVBAで 4 2022/07/06 17:09
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- その他(データベース) accessについて 2 2022/05/31 16:58
- Visual Basic(VBA) エクセルVBAで教えて頂きたいのですが? 2 2022/12/31 20:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで漢字名称を都道府県や市区...
-
Accessのテーブルデータを一気...
-
Accessでデータシートに同じデ...
-
update文で改行を入れる
-
「テーブルに座って……」という...
-
accessでレコード更新直後の反...
-
一つ前に戻るには…
-
Access2000の削除クエリで消し...
-
SELECT 文の NULL列は?
-
ROWNUMでUPDATEをしたいのです...
-
お金持ちのテーブル
-
L2SWはARPテーブルを持っている?
-
テーブル名をカラムとして取得...
-
SQL 複数テーブルのupdate
-
Oracleのsystem表領域について
-
件数の多い順にselect
-
一致するデータのみ削除したい
-
外部キーだけのテーブル(主キ...
-
DBのテーブルの設計ができず困...
-
テーブルで一番古いレコードだ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
このSQLあってますか?教えてく...
-
SQLで漢字名称を都道府県や市区...
-
下記の問合せを行うクエリを、P...
-
SELECT文内での条件分岐
-
下記の問合せを行うクエリを、P...
-
SQLです。こんな感じですか?あ...
-
条件付データ差分の抽出で
-
SQL 主キーによる自動的な表の結合
-
update文におけるwhereとjoinの...
-
グループごとの最高得点者一覧...
-
降順で並び替えて昇順で受け取...
-
SQLの作成方法
-
うまくいきません教えてくださ...
-
サブクエリを使用せずにLEFT JO...
-
現在庫算出方法についてお教え...
-
ACCESS2010 SQL 結合キーにつ...
-
UPDATEでSETする値
-
複数テーブルの結合結果を自分...
-
SQL CASE文に制御について
-
3つの表の外部結合
おすすめ情報