阅读 125

access数据库select查询top时无效的解决办法

access数据库select查询top时有时无效,原因就是在使用Order by时,且排序的条件中数据有重复的。

比如:select top 10 * from table1 order by cdate desc

其中数据中cdate有很多重复的,这样就导致top失效了。

解决办法就是order一个主键字段来辅助实现

如:select top 10 * from table1 order by cdate desc,ID desc

这样就可以了。


参考一个相关的解释吧,如下:

JET SQL不是 T-SQL语句。jet sql 会返回重复值,也就是说,一个表中如果 ORDER BY 的字段都是 0 ,一共有100条记录,即使你用SELECT TOP 1 来返回记录,也同样返回100条记录,因为 JET DB 无从在这100条记录里面判断先后次序,只能返回100条。要解决此问题可以在后面加入一个主键字段。

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐