表就是上面的t,
里面有字段v1,n1
我就是要找出,select n1 into nn1 from t where v1='a'
             select n1 into nn2 from t where v2='b'
             select nn1/nn2 into nn3 from dual;
我要的就是nn3,但是,我要用一个SQL实现一批这种数据.,我也不往CURSOR里放。因为,外面套的循环已经很麻烦了。
就是希望一个SQL.

解决方案 »

  1.   

    首先要确定的是你的表中的v1是主键吗?v1='a'查出的记录会不会多条?
    会不会v1='a'与v2='b'查出的记录数不一样?
    那就????....
    如果这两个查询都只返回一条记录的话,那就容易了:
    select a.n1/b.n1 nn3 from 
      (select n1 from t where v1='a') a,
      (select n1 from t where v1='b') b;
      

  2.   

    select nl/(lead(nl,1,1) over (ooder by vl)) from t order by vl
      

  3.   

    你的目的是n1 排序,再用上一条记录的 n1 值/ 下一条记录n1 的值吗?
     szsmall(麒麟) 的方法能实现