我的SQL语句是这样的 "SELECT * FROM T_User ORDER BY ID ASC"这个语句是没有什么错误。。但是读出来的结果却不正确,ID=1的数据有三条,ID=2的也有三条,有些有二条的,还有一些有一条数据的,在数据库里面,ID是唯一的,是自动编号型字段,我反复的查过,ID=1没有三条记录,ID=2的也并没有三条记录。这是怎么回事呢?我使用的是mssql数据库?

解决方案 »

  1.   

    ID 是不是本来就重复?用这句
    SELECT distinct * FROM T_User ORDER BY ID ASC
      

  2.   

    首先,用这个SQL语句(SELECT distinct * FROM T_User ORDER BY ID ASC
    )不能通过?提示错误:“不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型。”下面我是查询分析器里面实行这一条语句的结果 SELECT top 10 * FROM alexa_data ORDER BY fID ASCfID     fUserID   fUserName
    5 5 shng            
    5 5 shng            
    5 5 shng            
    6 6 kdg01               
    6 6 kdg01               
    6 6 kdg01               
    7 7 entmax              
    7 7 entmax              
    7 7 entmax              
    8 8 10360  再次声明,数据库里面fID绝对没有重复的字段,因为我手动每条都找过,根本没有这么回事,再说那是一个自动编号型字段也不可能的。我猜是MSSQL数据库出错了,但不知道出错在哪里             
      

  3.   

    SELECT distinct * FROM T_User ORDER BY ID ASC这句错在distinct关键字后不能接*,只能接一个列名.楼主这个情况常理是不可能的,请检查你是否还加了右联查询.如果不是,那就是见鬼了.去请神吧.
      

  4.   

    不可能吧, 实际存在的ID是唯一的,  不可能出现这个问题的, 是不是你的执行SQL的环境有问题,或是重了毒,先杀杀吧