在桌面上生成报告的最佳方式

时间:2009-05-06 14:27:57

标签: mysql report

问题是: 我有一个包含详细信息的表格,用户在注册或更新个人资料或参加不同的考试时使用此表格。 我需要的报告将有一些计算,如总分。 我想好像创建新表包括我需要的报告或者最好在同一个表上工作。

1 个答案:

答案 0 :(得分:2)

您能提供更多详情吗?您要查询的表格中有哪些字段?您想如何显示此信息?在网站上?报告?

根据您的描述,您需要两张桌子。一个表(允许呼叫'用户')将包含有关每个用户的信息,另一个表将包含实际的考试分数(让我们称之为'结果')。

'user'表格中的每个人都有一个唯一的ID号码(我称之为 UID )来识别它们,以及中的每个分数'结果'表还有得分与之相关的人的UID。通过在'results'表中包含用户的UID,您可以链接无数个结果(称为一对多关系)。

'user'表格如下所示:

userUID (UID for each person) | Name | User Details
1 | Barack Obama | President 
2 | George Bush | Ex-President

'results'表可能如下所示:

UID for each exam | userUID (UID of the person who look the test) | Score
1 | 1 | 85
2 | 2 | 40    
3 | 1 | 82
4 | 2 | 25

我总是喜欢为考试等内容添加UID,因为它可以让您轻松找到特定的考试成绩。

无论如何......获得巴拉克奥巴马所有结果的查询将如下所示:

SELECT Score From 'results' WHERE userUID = 1

要获得George Bush的结果,只需将userUID更改为2.在运行此查询之前,您显然需要知道用户的UID(userUID)。

请注意,这些是非常基本的例子(涉及虚构人物;))。您可以轻松地将聚合得分字段添加到'user'表中,并在每次向'results'表添加新结果时更新该表。根据您的代码设置方式,这可以为您节省查询。

祝你好运 - 希望这有帮助!

相关问题