ビデオゲーム、開発者、ワークソンという 3 つのテーブルがあるとします。
ビデオゲーム テーブルには次の属性があります:
開発者テーブルには次のようになります:
その後、workson テーブルには次のようになります:
コードの試行:
SELECT MAX(videogameid) から (ビデオゲームIDを選択してください ワークソンから ビデオゲーム ID ごとにグループ化 HAVING COUNT(DISTINCT 開発者 ID)>5 )videogames_with_most_developers;
ただし、タイトルを付けて回答を取得することはできませんでした (主にタイトルを選択しなかったため)。それは、接続が確立できないように見えるためです。
編集: ビデオゲームのテーブルにいくつかのサンプル データがあります:
ビデオ ゲームを挿入 (ビデオゲーム ID、タイトル、年、タイプ)
VALUES (111、「World of Warcraft」、2004、「MMORPG」); ビデオ ゲームを挿入 (ビデオ ゲーム ID、タイトル、年、種類) VALUES (112,'StarCraft II',2008,'RTS');
開発者テーブルには以下が含まれます:
開発者を挿入 (開発者 ID、性別、名前) 値(98734,'M','ジョンソン'); 開発者を挿入 (開発者 ID、性別、名前) 値(98735,"F","レジーナ"); 開発者を挿入 (開発者 ID、性別、名前) value(98736,"M","ラマー");
workson テーブルには次のものが含まれます:
ワークソンを挿入(ビデオゲームID、開発者ID) 値 (111, 98734); ワークソン(ビデオゲームID、開発者ID)を挿入 値(111、98735); ワークソン(ビデオゲームID、開発者ID)を挿入 値 (112, 98736);
期待される出力は、「World of Warcraft」というタイトルの出力になるはずです。これは、カウント 2 でこのプロジェクトに取り組んでいるディレクターが最も多いのに対し、「Starcraft 2」というタイトルのプロジェクトには、このサンプルで最も多くの開発者が含まれていないためです。データ 。
選択クエリで選択された列/集計関数 (MAX、COUNT、AVG など) がテーブルとして表示されます。 クエリ内:
リーリー最大値を持つビデオゲームの ID のみが表示されます。最大値のvideogameidのみを選択しました。クエリの 2 番目の部分では、5 人以上の開発者と協力しているビデオゲーム ID が選択されます。ここでも、選択ヘッダーは外部 SQL クエリに接続されません。
変更されたクエリ:
リーリーこのクエリには、5 人を超える開発者のビデオゲーム ID とタイトルが表示されます
別のクエリ:
リーリーこれには、最も多くの開発者がいる選択したビデオ ゲームのビデオゲーム ID と開発者の数が表示されます。タイトルなし ######。
タイトルを見たい場合:リーリー
このクエリは、開発者が最も多いタイトルとビデオゲーム ID を表示します。