我想查一张表的数据。有几条数据例如名称             版本
a              001
b              001
b              002
c              001
我想查询出最新版本的名称,上面有2个b,想通过sql语句查询出版本号更高的那一个。版本号低的不查出来。请问怎么搞

解决方案 »

  1.   

    select 名称,max(版本) 版本 from table group by 名称 
      

  2.   


    WITH T AS
     (SELECT 'a' MC, '001' BB
        FROM DUAL
      UNION ALL
      SELECT 'b', '001'
        FROM DUAL
      UNION ALL
      SELECT 'b', '002'
        FROM DUAL
      UNION ALL
      SELECT 'c', '001' FROM DUAL)
    SELECT MC, MAX(BB) FROM T GROUP BY MC;
      

  3.   


    select * from table where 版本 =(select max(版本) from testa)名称                 版本
    -------------------- --------------------
    b                    002
      

  4.   

    create table tabtest(name varchar2(20), type varchar2(10));
    select name, max(type) from tabtest group by name order by name;
      

  5.   

    create table tabtest(name varchar2(20), type varchar2(10));
    select name, max(type) from tabtest group by name order by name;
      

  6.   

    create table tabtest(name varchar2(20), type varchar2(10));
    select name, max(type) from tabtest group by name order by name;