使用完整的表名来区分称为QuizID的两列。
我正在创建一个在我的web应用程序测验制造商。该数据库由以下表组成:
- QUIZ Table: QuizID, Title, Description
- UserQuiz表:UserQuizID, QuizID, DateTimeComplete, Score, Username
现在,我想开发一个图表,显示测试的标题和每个测试的用户数量,但我不知道如何做。我正试图得到一个很好的查询,但我不知道如何。
我正在使用SqlDataSource访问数据库中的数据。
请帮帮我。
在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
不如这样试试
SELECT Title, count(UserQuizID) as usercount
FROM quiz a
JOIN userquiz b on a.quizid = b.quizid
GROUP BY Title
标题将是您的XValueMember
和usercount YValueMember
的系列。