select 
    a.* 
from 
    信息表 a 
where 
    a.version = (select top 1 version from 信息表 where docname=a.docname order by version desc)

解决方案 »

  1.   

    version什么数据类型,如果是数值型好办
    举例:
    create table 文档信息表
    (docname varchar(10),version numeric(4,2))insert 文档信息表
    values('aaa',1.21)
    insert 文档信息表
    values('aaa',1.22)
    insert 文档信息表
    values('bbb',1.0)
    select *
    from 文档信息表
    where version in (select max(a.version) from 文档信息表 as a join 文档信息表 as b  on a.docname=b.docname group by a.docname)
      

  2.   

    select 
        a.* 
    from 
        信息表 a 
    where not exists(select 1 from 信息表 where docname=a.docname and version>a.version)