当前位置:编程学习 > VB >>

关于数据库查询问题

VB+ACCESS,使用ADODC控件连接数据库
数据库中有这样一表
考试批次 姓名 得分
1 张三 60
1 李四 50
1 王五 30
2 张三 71
2 李四 60
2 王五 90
3 张三 20
3 李四 11
3 王五 60

如何查询出这样格式的表
姓名 第一次 第二次 第三次
张三 60 71 20
李四 50 60 11
王五 30 90 60

最好能写点代码,先谢过! 数据库 access 那要是有的人多一次有的人少一次呢? 是否要求对齐?

楼主最后是想要一个数据表呢, 还是显示方式? 交叉表查询。

最简单的方法,就是你在 Access 中选择“查询”和“在设计视图中创建查询”,再单击“新建”,在填出对话框中选择“交叉表查询向导”。在向导中选择表、行数据、列数据和值及其格式(下一步),直至看到你想要的表格。Access 会为你写出 SQL 语句。 忘了说了,它生成的一般会缺省地产生行的总计项。你把它去掉就好了。
这是用你的例子得到的一个 SQL:
TRANSFORM Sum(表2.得分) AS 得分之总计
SELECT 表2.姓名
FROM 表2
GROUP BY 表2.姓名
PIVOT 表2.考试批次;


得到的查询结果:
姓名	1	2	3
李四 50 60 11
王五 30 90 60
张三 60 71 20
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,