有一表T如下“ID NAME MAXVAL  MINVAL
1   a      9      7
2   b      8      3
3   a      6      4
4   a      7      2
5   b      6      5~~~~~~~~~~~~~~~~~~~~~~~~~~
现在想得到下面这样
ID  NAME  最大值   最小值
1    a       9       3
2    b       8       3就是一个name为一行记录,其中最大值是name相同列maxval的最大值,最小值是name相同列minval的最小值
SQL语句怎么写,问题解决立即给分,谢谢

解决方案 »

  1.   

    select min(ID),Name,max(MAXVAL),min(MINVAL) from 表 group by Name
      

  2.   

    ID  NAME  最大值   最小值
    1    a       9       3
    2    b       8       3a的minival是2不是3吧?
    如果是笔误,那上面的方法就是对的。
      

  3.   

    select min(ID) as ID,Name,max(MAXVAL) as 最大值,min(MINVAL) as 最小值 from 表 group by Name
      

  4.   

    Select 
    NAME,
    Max(MAXVAL) As 最大值,
    Min(MINVAL) As 最小值
    From TableName
    Group By NAME
      

  5.   

    加上ID列Select 
    Min(ID) As ID
    NAME,
    Max(MAXVAL) As 最大值,
    Min(MINVAL) As 最小值
    From TableName
    Group By NAME
      

  6.   

    select min(ID),Name,max(MAXVAL),min(MINVAL) from 表 group by Name
    正解
      

  7.   

    楼主的ID应爱只是表示的一个自增序列的意思吧
    如果min(ID)的话,可能会产生重复
    select Name,max(MAXVAL),min(MINVAL) from 表 group by Name
      

  8.   

    fcuandy(边打魔兽边回贴) ( ) 信誉:100  2006-07-17 11:32:00  得分: 0  
     
     
       哈哈,鱼少打了个逗号,结果没抢到分.
      
     
    -----------------------------------
    現在在SQL版呆的時間不長,偶而過來看看,等我看到帖子再回復上來的時候,已經N個回復了。其實這個帖子,沒得分比較正常,得分了也是蹭的。:)