SELECT 表1.工作证号, Last(表.姓名) AS 姓名, Last(表1.考试时间) AS 考试时间, Max(表1.考试分数) AS 考试分数, Last(表1.是否合格) AS 是否合格 FROM 表1 GROUP BY 表1.工作证号;
试试看?获取最后一条记录和分数最大值 作者: aslxt 时间: 2011-6-3 20:07
建议表中增加一个id(自动编号)字段,方便处理一点。即:
DELETE 表.*, 表.id
FROM 表
WHERE (((表.id) Not In (SELECT 表.id
FROM 表 INNER JOIN [SELECT 表.工作证号, Max(表.考试分数) AS 考试分数之最大值 FROM 表 GROUP BY 表.工作证号]. AS 子查询1 ON (表.考试分数 = 子查询1.考试分数之最大值) AND (表.工作证号 = 子查询1.工作证号))));
注意,操作之前一定要备份,否则数据丢失!!! 作者: sinotrust 时间: 2011-6-3 22:28
建议用记录集接收数据,然后用循环工号,如果工号想等,则比较成绩,然将成绩低的记录删除。作者: jxjawlh 时间: 2011-6-12 10:22
学习了,谢谢