如何在Access内生成交叉报表时对字段进行排序?

hpy121 2005-06-30 05:11:36
数据表(用Access数据库)存贮格式如下:

学号 题号 得分
A 1 4
B 1 4
C 1 3
A 2 3
B 2 5
C 2 4
A 3 2
B 3 4
C 3 3

希望进行转换得到如下表:

学号 题号2 题号1 题号3 总得分
B 5 4 4 13
C 4 3 3 10
A 3 4 2 9
合计 12 11 9

1、对行的排序按总得分由高到低降序排列
2、对列要求按题号得分合计最高的再前,得分最低的在最后
3、用SQL语气转换时合计项可以不生成

我SQL语气可以生成交叉表,但不能对字段进行排序(上述第2点做不到)
请高手多多赐教,不甚感激,谢谢!
...全文
228 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hpy121 2005-07-07
  • 打赏
  • 举报
回复
不知大家是否还有其他解决办法?
我是用Deiphi+Access写的
changechange 2005-07-07
  • 打赏
  • 举报
回复
如果不能排序,那么生成临时表后再排序即可
changechange 2005-07-01
  • 打赏
  • 举报
回复
如果不能排序,那么生成临时表后再排序即可
wwwwb 2005-07-01
  • 打赏
  • 举报
回复
如是按合计排序,则要考虑修改表结构了。
wwwwb 2005-07-01
  • 打赏
  • 举报
回复
第2点做不到,也没有意义,每一个人的得分不一样,怎样排序?
在例子中,B的2题得分最高,而A的2题得分并不是最高。
wwwwb 2005-07-01
  • 打赏
  • 举报
回复
在SQL SERVER中有GROUPING函数,可以自动计算,而ACCESS没有。
hpy121 2005-07-01
  • 打赏
  • 举报
回复
用SQL_Server数据库是可以的:
http://community.csdn.net/Expert/topic/4021/4021584.xml?temp=.2288477
现在我换成Access桌面数据库,就做不出来!
hpy121 2005-07-01
  • 打赏
  • 举报
回复
用SQL_Server数据库是可以的:
http://community.csdn.net/Expert/topic/4021/4021584.xml?temp=.2288477
现在我换成Access桌面数据库,就做不出来!
liuyann 2005-06-30
  • 打赏
  • 举报
回复
做不到,换是我做的话,可能要用程序来解决了

7,732

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧