假设字段
a      b
2      001
.
.
.这样就可以。
select *
from tab
group a
order by b

解决方案 »

  1.   

    group by 可以和order by 一起用吗?怎么我试了不可以啊。
      

  2.   

    可否提供一个可以执行通过的SQL语句,谢谢了
      

  3.   

    order by a,b  ,其中a,b分别是提单号,箱子号.不知道你是不是这个意思.
      

  4.   

    用group by 和 order by 就行了
      

  5.   

    这样可以吗?
    SQL> select * from tmp1
      2  /        A B
    --------- ----------
            2 001
            2 004
            2 005
            3 001
            3 002
            1 004
            1 002
            1 0038 rows selected.SQL> select a,b from tmp1 order by a, b
      2  /        A B
    --------- ----------
            1 002
            1 003
            1 004
            2 001
            2 004
            2 005
            3 001
            3 0028 rows selected.SQL>
      

  6.   

    感谢大家的回复:)Eric_1999(╙@^@╜) ,那样是不可以的,只能是先按提单排序。然后属于一个箱子的提单再排序显示
      

  7.   

    select tmp1.* from tmp1,
    (select t.a,min(t.b) as minb from tmp1 t
    group by t.a) tmp2
    where tmp1.a= tmp2.a
    order by tmp2.minb ,tmp1.a
    大家帮我看看这么写,对不对啊?谢谢了
      

  8.   

    楼主的执行结果是
    SQL> select tmp1.* from tmp1,
      2  (select t.a,min(t.b) as minb from tmp1 t
      3  group by t.a) tmp2
      4  where tmp1.a= tmp2.a
      5  order by tmp2.minb ,tmp1.a
      6  /        A B
    --------- ----------
            2 001
            2 004
            2 005
            3 001
            3 002
            1 004
            1 002
            1 0038 rows selected.SQL>
      

  9.   

    select tmp1.* from tmp1,
    (select t.a,min(t.b) as minb from tmp1 t
    group by t.a) tmp2
    where tmp1.a= tmp2.a
    order by tmp2.minb ,tmp1.a ,tmp1.b
    这样应该就会完全与我的要求一样了。