假设我有一个成绩表记录若干次考试的成绩情况
id 考试次数 学生准考证号 学生成绩
1 1 00 a
2 2 00 b
3 1 01 c
4 2 01 d
然后学生被某老师教在下表中存储
id 阶段 准考证号 安排教师
1 1 00 X
2 1 01 Y
3 2 00 X
4 2 01 X
现在想通过教师,和考试序号(与阶段相同),来查询被该老师交的所有学生最近两次考试的成绩,形成如下的表
教师 准考证号 前成绩 后成绩
X 00 a b
X 01 c d
请问可以如何实现?我不知道如何把成绩这个字段,在查询中重复两次。
亦或是我表建得有问题?
Y老师怎么不在结果中出来,可能是你要求的结果有问题?
上面是一个例子吧,我只查X老师的啊?
现在的问题是对成绩这个字段,我想分两次查找,两次查找的条件不一样。
@郝酒:
SELECT [student].[id]
,[student].[考试次数]
,[student].[学生准考证号]
,[student].[学生成绩]
,[teather].安排教师
FROM [Test].[dbo].[student]
join [teather]
on
[student].[id]=[teather].id
这样取得数据 最简单
@cazwell: 这样就把所有数都取出来了,然后再用语言来计算哈?
但是我用的是ACCESS,不知道后续的计算怎么写。
如果是mysql+PHP,就用简单粗暴的方法解决了。
@郝酒:
那你去研究ACCESS的VBA,数据库的问题用数据库解决,编程的问题用编程解决。
我也感觉这结果根本不正确啊,还是我意思理解错了?
就是呢 ,b和 c的 位置搞反了 ,抱歉抱歉:)
想法就是怎么能把两次的成绩在一次查询中显示?
@郝酒: 用join http://www.w3school.com.cn/sql/sql_join.asp 具体自己看,不难理解