create or replace procedure test(total out number,id...) is ... begin select count(*) as total from table_name where status=0; if total>0 then ....
end if; if total=0 then ... end if; end; /
貌似select count(*) as total from table_name where status=0;有问题,我想把状态为1的记录条数赋给total,不知道有什么方法?请大家多多指导
------解决方案-------------------- 要用into select count(*) into total from table_name where status=0;
------解决方案-------------------- 在存储过程中要使用select into的方式把SQL得到的值赋给变量
SQL code
set serverout on
declare
v_count number;
begin
select count(1) into v_count from dual;
dbms_output.put_line(v_count);
--如果是动态SQL
execute immediate 'select count(1) from dual' into v_count;
dbms_output.put_line(v_count);
end;
------解决方案--------------------
------解决方案--------------------
------解决方案-------------------- select count(*) into
------解决方案-------------------- select count(*) into total from table_name where status=0;
------解决方案-------------------- as 是给列制定别名的。要用into赋值。 select count(*) into total from table_name where status=0;