我要在执行一段sql之后返回这样一个表,比如
表头是固定的,如
colum1,colum2,colum3
a1
a2
a3
a4
a5
其中colum2,colum3中的每行中对应的值都是依靠同一行中的a1经过计算后得到,
其中colum1中的值我是用一个游标来保存的,因为是根据条件变化的,
如何用一个sql把他们全部弄出来,因为我觉得做一个可以,其余的就是循环一下,只是在sql里不知道怎么写循环而已??可以写不??高手指点!!(以前是用select存每一行,然后用union把所有行的sql拼接起来,我觉得那样很不好,应该有更加有效的方案)高手指点
比如
根据游标中的个数
loop 
select cur(1)as colum1,
       处理cur(1)as colum2,
       处理cur(1)as colum3
end loop

解决方案 »

  1.   

    你把colum2,colum3  要得到的结果是?你贴出来?
      

  2.   

    要出来的数据大概是这个样子的
    EQPID    Total       百分率
    123L
    456
    789
    EQPID类似是一些字串,我存在游标中了select cur(i)as EQP_ID,
           count(decode(decode(N.EQP_ID,cur(1),1,0),1,0)as total,
           total/一个常量
           
    至于百分率的计算就是用到的上面这个total/一个总数(就是所有total的总数,我已经用别的方法求出来了,已经是个常量了),我也知道怎么算,就是不知道怎么怎么写在一起一次性把这个sql付给一个游标,然后返回一个如上所述的table,以前是单个去写,然后union,我觉得那样很不好,其实每行数据就是相当于遍历一下游标中不同的值而已,
    高手指点一下怎么写一个循环一次取出来
           
           
      

  3.   

    把你的cur(i)代码和一个常量的代码都贴上来。