集計とフィルタリングのためのサブクエリ
メニューを表示するにはスワイプしてください
サブクエリは、SQLにおいて高度な操作(集計やフィルタリングなど)をクエリ内で実行できる強力なツール。
図書館管理システムでは、**「一定数以上の本を借りた会員は誰か?」や「最も人気のある本はどれか?」**といった質問に答える必要がある場合が多い。サブクエリを使うことで、まず集計値を計算し、その結果を使ってデータをフィルタリングしたり、さらに処理を加えたりできる。
集計のためのサブクエリを利用するには、SELECT、COUNT、MAXなどの集計関数を実行するMIN文を、別のクエリの中にネストする。この内側のクエリが要約値を計算し、外側のクエリがその値を使って結果をフィルタリングしたり、文脈を追加したりできる。例えば、会員ごとの貸出回数をカウントし、一定の基準を満たす会員のみを抽出することが可能。
サブクエリによるフィルタリングも同様。サブクエリの結果をWHERE句で利用し、複雑な条件に基づいて行を含めたり除外したりできる。特に、各行をサブクエリで生成された集計値や値の集合と比較したい場合に有用。
12345678-- Find members who have borrowed more than 5 books SELECT m.member_id, m.name FROM members m WHERE ( SELECT COUNT(*) FROM borrowings b WHERE b.member_id = m.member_id ) > 1;
1. サブクエリを使って会員ごとの貸出回数をカウントするなどの集計を行う際、最も一般的に使用されるSQL句はどれか?
2. 次のうち、サブクエリを使って一度も本を借りたことがない会員を正しく抽出するクエリはどれですか?
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 13
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 13