MS Access拉出五行而不是四行

本文关键字:四行 五行 MS Access | 更新日期: 2023-09-27 18:21:50

我制作了一个最受欢迎的游戏列表,这是我的SQL代码:

SELECT TOP 4 * FROM games ORDER BY games.likes DESC;

正如你所看到的,代码本身选择了四个游戏,但有时当游戏的点赞数量相同时,它会显示其中五个。。

https://i.stack.imgur.com/Xdisb.png

MS Access拉出五行而不是四行

这是经过设计的。以下是文件中的相关部分(重点是我的):

SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 1994
ORDER BY GradePointAverage DESC;

[…]

TOP谓词不会在相等的值之间进行选择在上例中,如果第二十五个和第二十六个最高绩点的平均值相同,则查询将返回26条记录

您有以下选项来修复此问题:

  • 添加第二个ORDER BY字段,用作平局决胜器,或者
  • 在C#中将您的列表过滤为四个条目

这是有文档记录的行为。

来自微软:

SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage DESC;

TOP谓词不会在相等的值之间进行选择。在前面的示例中,如果第二十五个和第二十六个最高绩点的平均值相同,则查询将返回26条记录。