请问语句中包含 top 1 ,是否返回值就一定是唯一呢?
最近看了一份文章,里面说道top n 的用法,里面提到:
返回出现在由 ORDER BY 子句指定的起始和结束范围内的一定数量的记录。假定希望得到 1994 年级中前 25 名学生的名字:
SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 1994
ORDER BY GradePointAverage DESC;
TOP 谓词不会在两个相等的值中进行选择。在上面的示例中,如果第 25 和第 26 名的年级平均分相同,那么查询将会返回 26 个记录。
换言之,虽然是“SELECT TOP 25”,但有可能会返回大于25的记录。是这样吗?我看sql的帮助并不是这样写的,请高手们给我解析一下,谢谢!!
top 25 返回的永远是<=25的记录。
符合条件的记录数小于 25 条时,返回全部记录 <25