Access应用中的Select Top无效问题

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>

  很早以前做asp+access的网站,就发现sql语句select top无效,不管top几条都是全部出来,同样的语句在sql2000中正常,邪门了,当时查查关于ACCESS中TOP 功能的一个问题,一直没有解决,就偷懒用限定程序循环次数解决了。

  最近重写深度学习(asp)网址导航(www.deepteach.com),又仔细查了一下资料。原来是access中对select top的语句支持有限,如果想在使用,要在查询TOP语句的后面使用Order by,而且Order by排序字段必须是无重复值,如果有重复值的话,那么这个TOP很可能会失效,会返回所有记录。
比如:

Select top 5 from 表 order by 性别,如果“性别”字段中有重复值,那么access数据库查询时很有可能会显示出所有的记录来,此时top功能会失效的,但如果“性别”中无重复值,那么top功能还是有效的。因此,在ACCESS中使用top功能要注意一下order by的字段是否会有重复值,为了保险起见,可以采用加入主键”的方式:Select top 5 from 表 order by 性别,id

  用主键作“不可能重复”的保障就可以防止此问题出现了!!



本文转自 netcorner 博客园博客,原文链接:  http://www.cnblogs.com/netcorner/archive/2010/04/01/2912027.html ,如需转载请自行联系原作者

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值