0

Web アプリケーションでクイズ メーカーを作成しています。データベースは、次のテーブルで構成されています。

  • QUIZ テーブル: QuizID、タイトル、説明
  • UserQuiz テーブル: UserQuizID、QuizID、DateTimeComplete、Score、Username

ここで、クイズのタイトルと、これらのクイズをそれぞれ受けたユーザーの数を示すグラフを作成したいのですが、方法がわかりません。これについて適切なクエリを取得しようとしていますが、方法がわかりません。

データベース内のデータにアクセスするために SqlDataSource を使用しています。

私を助けてください。

4

2 に答える 2

2

SQLでは、これは次のようになります

SELECT  Q.QuizID, Q.Title, count(uq.*) as Users
  FROM  UserQuiz UQ
  JOIN  Quiz Q ON Q.QuizID = UQ.QuizID
GROUP BY Q.QuizID, Q.Title

またはテーブルエイリアスなしの場合QUQこれは次のようになります

SELECT  Quiz.QuizID, Title, count(*) as Users
  FROM  UserQuiz
  JOIN  Quiz ON Quiz.QuizID = UserQuiz.QuizID
GROUP BY Quiz.QuizID, Title

完全なテーブル名を使用して、QuizID と呼ばれる 2 つの列を区別します。

于 2011-11-09T11:51:03.127 に答える
1

このようなことを試してみてはどうでしょうか

SELECT Title, count(UserQuizID) as usercount
FROM quiz a
JOIN userquiz b on a.quizid = b.quizid
GROUP BY Title

タイトルはあなたXValueMemberYValueMemberシリーズのユーザー数になります。

于 2011-11-09T11:50:40.670 に答える