我1个表里有207条记录,第1个字段是产品8个大类的名称。在pl/sql里用order by排序这个大类字段,可以把这8个大类分开,但是把这段sql拷贝到我的程序里,这些大类大部分能分开,但是少部分就被其它类别隔开了。如下所示:类1
类1
类1
类1
类2
类2
类2
类2
类1-----排序不对
类1-----排序不对

类3
类3
类3请问怎么解决?

解决方案 »

  1.   


    select a01 from 
    (select a01,row_number()over(parition by a01 order by a01) rn from tab1)
    order by rn
      

  2.   

    好像是程序控件的问题,我真晕,我用的是公司开发的报表软件,这算bug吗?同事建议我前面加一个自增加的字段,然后用这个字段排序,怎么写有人知道吗?
      

  3.   

    你可以给你的分类设置一个固定数值,你不是一共也就8个大分类吗?
    比如:分类1:1
              分类2:2
             
    然后按照1,2,3。。排序就行了实现方式:select decode(‘大分类1’,1,‘大分类2’, 2,。。) 大分类值,你的sql其他字段

    order by 大分类值
      

  4.   


    在前面加个rownum就可以了,也就是如下:
    select rownum rn,列1,列2,列3...... from talbe order by ...
    然后在你的报表控件里按rn列排序好了