1.create procedure proj_1(v_num out number) as
v_pro varchar2(20)
begin
select sum(cast(info  as int(20)))/100 into v_num from 表名 where bi=v_pro;
end;
/*不懂你这是什么,我照抄sum(cast(info  as int(20)))/100 */2.select decode(a.qq,'YES','是'),a.ww, b.aa,b.ss,
    from a.rr=b.ff

解决方案 »

  1.   

    1.select sum( to_number( 字段名 ) ) /100 from 表名 where bi=@pro
      

  2.   

    1:
    create or replace procedure tes(aa in varchar)
    as
     Vsql varchar2(100);
    begin
      Vsql:='select sum(to_number(b)) a from t1 where a='||aa;
      dbms_out
      execute immediate Vsql;
    end;
    /2:
    select 
      decode(a.qq,'YES','是'),a.ww,b.aa,b.ss
    from a,b
    where a.rr=b.ff;
      

  3.   

    第一个如果时返回结果集的话
    需要用ref cursor来返回。
    这个跟sql server不同。
    搜索“结果集”
      

  4.   

    不好意思,2错了
    2.select decode(a.qq,'YES','是'),a.ww, b.aa,b.ss,
        from a, b
       where a.rr=b.ff;
      

  5.   

    /*不懂你这是什么,我照抄sum(cast(info  as int(20)))/100 */在SQL SERVER里,这是先把字段info(字符形)转换成int形的,然后求和,把求出和的值除以100
      

  6.   

    select sum(to_number(info))/100  from 表名 where bi=v_pro;如果这查出有很多记录,就要用游标了
      

  7.   

    第一个:
    create or replace procedure proj_1(aa in varchar2)
    begin
       select sum(to_number(info))/100 from 表名 where bi = aa;
    end;