ID  姓名
1   张三
2   李四
3   王五
4   张三
5   李四
.....
我想按ID号降序取出前5个不同的姓名,sql语句该怎么写
select distinct 姓名 from table order by id desc
这样写不行,select必须包含ID号
select distinct ID,姓名 from table order by id desc
也不行。请高手赐教!!

解决方案 »

  1.   

    SELECT UserName
    FROM tblUser
    ORDER BY User DESC;distinct 是排除重复...
      

  2.   

    select distinct 姓名,[id] from [table] order by [id] desc
      

  3.   

    to  faysky2() 
    这个sql语句不行,我希望得到的是李四,张三,王五,结果是 李四,张三,王五,李四,张三。还是没有去掉重复的。
      

  4.   

    try:select top 5 min(id) as id,姓名
    from tb
    group by 姓名
      

  5.   

    select top 5 min(id) as id,姓名
    from tb
    group by 姓名
    order by id
      

  6.   

    select distinct ID,姓名 from table order by id desc
    语法就对的,根据提示检查一下名字有没错误
      

  7.   

    SELECT DISTINCT 姓名 FROM (select id,姓名 from [table] order by id desc)
      

  8.   

    如果是想得到前5个人的姓名并排除重复,就用如下语句:
    select distinct 姓名 from (select top 5 id,姓名 from table order by id desc)
    如果是想得到排在前面的人中不同名的5个人的话我现在还没做出来
      

  9.   

    SELECT DISTINCT 姓名 FROM (select top 100 id,姓名 from [table] order by id desc) from [table]
    这样就可以了。谢谢各位了。结贴
      

  10.   

    to vbman2003(家人) 
    也可以,谢谢。