我正在我的网络应用程序中创建一个测验制作者。该数据库包含以下表格:
现在,我想开发一个图表,显示测验的标题,其中包含参加每个测验的用户数量,但我不知道如何。我试图得到一个很好的查询,但我不知道如何。
我正在使用SqlDataSource访问数据库中的数据。
请帮帮我。
答案 0 :(得分: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
或没有表别名Q
和UQ
这将是
SELECT Quiz.QuizID, Title, count(*) as Users
FROM UserQuiz
JOIN Quiz ON Quiz.QuizID = UserQuiz.QuizID
GROUP BY Quiz.QuizID, Title
使用完整的表名来区分名为QuizID的两列。
答案 1 :(得分:1)
尝试这样的事情怎么样
SELECT Title, count(UserQuizID) as usercount
FROM quiz a
JOIN userquiz b on a.quizid = b.quizid
GROUP BY Title
标题将是该系列的XValueMember
和用户数YValueMember
。