Access数据库top记录的问题解决

最近碰到一个问题,就是读取Access数据库中某个条件下前几条记录时候记录数不会按指定的出来,而是读取全部符合条件的记录。

 

如:

sql="select top 10 * where kind=1 order by modifydate desc"

 

上面这种由于排序的字段为非主键,在产生重复的记录时候会使TOP失效而读取整个条件内的所有记录到记录集。

 

通过修改,加上一个第二个排序依据id,则正常:

 

正确的代码为:

sql="select top 10 * where kind=1 order by modifydate desc,id desc"

posted @ 2009-03-23 12:59  小草  阅读(1879)  评论(1编辑  收藏  举报
Google+