有表b
name  age score
 a      1    10
 a      2    20
 b      3    30
 b      4    40
 c      5    50
 c      6    60
我想显示
name  age  score
 a     1     10
 b     3     30
 c     5     50
怎么写sql谢谢

解决方案 »

  1.   

    select distinct name, age, score from b group by name order by name
      

  2.   

    select distinct name,age,score from b
    where score%10=0 and score%30=0;试一下
      

  3.   

    select name,age,score
    form b
    where age = 1
    and age = 3
    and age =5;
    哈哈,我是个super菜鸟,瞎写的别见笑.
      

  4.   

    数据库表里的行是没有顺序的,这次可能是
    name  age score
     a      1    10
     a      2    20
     b      3    30
     b      4    40
     c      5    50
     c      6    60下次可能是
    name  age score
     a      2    20
     b      3    30
     b      4    40
     c      6    60
     c      5    50
     a      1    10再下次可能是......所以你的需求可能是无法做到的。除非另外加一个列,用于你的特定的查询。
      

  5.   

    select name,  min(age), min(score) from table t group by name
      

  6.   

    在取值上的什么要求吗?
    例如:
    a 1  10
    a 2  30
    a 3  20是取a 的时候按score的最小值取吗?这些附加的条件都说清楚点,再给你写一个
      

  7.   

    select * from b k
    where k.rowid <= 
        (select min(rowid) from b t 
           where t.name=k.name ) 
    适合oracle,不知道行不行?