Access查询前几条记录和相同记录只取一条的方法

2018-01-05 15:36:00
黄善超
原创
1166

在SQL语句中,用Top可以取前面几条记录。[TOP n [PERCENT] 的格式


如“Select Top 2 分数,姓名 From tblstu”,在学生表中找出前面两条记录。


如果没有包含 ORDER BY 子句,查询将会从表中返回一个满足条件的前面2条记录


注意:

TOP 谓词不会在两个相等的值中进行选择。TOP 之后的值必须是无符号整数。如下面的示例,从“tblstu”表中找出分数排名前两位的姓名,如果成绩一样的话,Top会把符合的记录一并选取。不会选择其中一条记录。

SELECT TOP 2 分数, 姓名
FROM tblstu
ORDER BY 分数 DESC;


如果存在相同记录,如何才能只选择其中一条呢?

这里我们只需要先找出相同的记录,再筛选其中一条记录,再用Top获取即可

SELECT TOP 2 分数, 姓名 FROM tblstu WHERE 编号 IN 
( select min(编号) from tblstu group by 分数 )
ORDER BY 分数 DESC;

    分享