sqlc4="select top 6 * from Products where Newproduct=true and Len(DefaultPicUrl)>1 order by UpdateTime desc"上述语句搜索总是显示出7条,而不是6条语句,请问为何,我发现是Newproduct=true这里的问题,请问应该如何改,我用的是access数据库

解决方案 »

  1.   

    不可思议,access还有这功能,应该top 多少就最多是多少吧,只会少不会多的
      

  2.   

    我怀疑是你的程序中有问题,单步调试一下,跟踪没个结果集看看,或者把sql语句直接拿到access中运行一下看看
      

  3.   

     如果在查询TOP语句的后面使用Order by,而且Order by字段中有重复值的话,那么这个TOP很可能会失效,会返回所有记录比如: Select top 5 from News order by CreateDate如果CreateDate中有重复值,那么很有可能会显示出所有的记录来,此TOP功能会失效的但如果CreateDate中无重复值,那么TOP功能还是有效的
      

  4.   

    sqlc4="select top 6 * from Products where Newproduct=true and Len(DefaultPicUrl)>1 order by UpdateTime desc,[主键] desc"
    --试一下!!
      

  5.   

    我刚才在SQL SERVER试了下,你的说法靠不住
      

  6.   

    不好意思,access里可以,我在网上也找到类似的说法。
    http://www.cnblogs.com/605395451/archive/2011/08/04/2127728.html