SELECT top 10 BookID,ClassID,BookName,HitNum FROM BookList ORDER BY HitNum DESC按HitNum倒序取前10条记录...取出的是所有记录呀?????

解决方案 »

  1.   

    BookList共2700多条记录用这段语句的时候查出的是所有记录而不是10条..
      

  2.   

    SELECT TOP 10 bookid,classid,bookname,hitnum FROM booklist ORDER BY hitnum DESC
    我在MS SQL SERVER 2000 + SP4 测试通过,可按要求取出数据
    应该不会有问题建议你再测试一下,直接放到SQL 查询分析器中,查出来的是什么?
    如果不是MS SQL SERVER 2000请说明一下,你用的数据库是什么?以及相关的平台...
    这样我们才好讨论
      

  3.   

    我问的问题是,,为什么查出的是总的2700条记录而不是10条,,已经top 10了呀..
      

  4.   

    查出问题来了,,用的是ACCESS数据库,,排序HitNum字段数值一样,,取出来的就是所有记录,,当HitNum字段中有10条以上大于其它HitNum记录值的时候才能正确取出前10条,,打个比方:记录:HitNum字段值
    id     第一种HitNum    第二种HitNum
    1      10                10
    2       9                 9
    3       8                 8
    4       7                 7
    5       6                 6
    6       5                 5
    7       4                 4
    8       3                 3
    9       2                 2
    10      2                 1 
    11      2                 0
    12      1                 0
    如上值,,
    当是第一种时查询前10的时候会列出id 1-11 条的记录
    当是第二种时查询前10的时候的时候会列出id 1-10 条的记录
      

  5.   

    create Proc Ajax
    declare @account char,@i int
    set @i=1
    while @i<1000000
    begin 
    set @i=@i+1
    insert into AjaxUser (UserID) values (@account) 
    end不知道哪里出错了
    老是说
    在关键字 'declare' 附近有语法错误
      

  6.   

    create Proc Ajax 
    @account char,
    @i int
    as --少个as
    set @i=1
    while @i<1000000
    begin 
    set @i=@i+1
    insert into AjaxUser (UserID) values (@account) 
    end