gpt4 book ai didi

sql-server-2012 - sql server 2012偏移量返回相同的记录

转载 作者:行者123 更新时间:2023-12-04 07:02:34 24 4
gpt4 key购买 nike

我在使用 SQL Server 2012 时遇到了一个奇怪的问题。

我使用这样的查询

SELECT * FROM table ORDER BY field OFFSET 0 ROWS FETCH NEXT 25 ROWS ONLY

每次我从 0 到 25、25 到 50、50 到 75、75 到 100 使用此查询时,它都会返回相同的 25 条记录。

当我将它用于 100 到 125 时,它会返回原来的 25 到 50 等等...

我的表只包含 197 条记录,而且这种情况只发生在我的数据库的一个表上。所有其他表格均正常工作。

当我通过代码 (ASP.NET C#) 和直接从 SQL Management Studio 使用查询时,也会发生这种情况。

最佳答案

我有同样的问题:查询总是在偏移值 (30) 上独立返回相同的行:

OFFSET 30 ROWS FETCH NEXT 10 ROWS ONLY 

对我来说,这条评论是正确答案:

Weird, maybe your column in ORDER BY is not deterministic, and make problem. Can field column can contain duplicates? If so, add primary key column in ORDER BY clause, after field column. – veljasije

我通过将 [ID] 列添加到 Order By 解决了这个问题:

ORDER BY [Status], [ID] ASC

关于sql-server-2012 - sql server 2012偏移量返回相同的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15783608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com