begin
open c_billing_info;
loop
fetch c_billing_info
into room_id,
v_square,
price,
extra_price1,
extra_price2,
v_plan_count1,
v_plan_count2,
v_item_id,
item_name,
item_code,
fee_type,
v_room_type_id,
v_compute_form,
v_overdue_flag;
exit when c_billing_info%notfound;
dbms_output.put_line('房屋id:'||room_id);
select b.previous_fee--在这里报错
into previous_fee
from t_pm_billing b
where b.status != 2
and b.room_id = room_id; --往月欠交
open c_billing_info;
loop
fetch c_billing_info
into room_id,
v_square,
price,
extra_price1,
extra_price2,
v_plan_count1,
v_plan_count2,
v_item_id,
item_name,
item_code,
fee_type,
v_room_type_id,
v_compute_form,
v_overdue_flag;
exit when c_billing_info%notfound;
dbms_output.put_line('房屋id:'||room_id);
select b.previous_fee--在这里报错
into previous_fee
from t_pm_billing b
where b.status != 2
and b.room_id = room_id; --往月欠交
查询出来有多个值!
--下面这个语句查出的结果超过一条
SELECT B.PREVIOUS_FEE --在这里报错
INTO PREVIOUS_FEE
FROM T_PM_BILLING B
WHERE B.STATUS != 2
AND B.ROOM_ID = ROOM_ID --往月欠交
AND ROWNUM = 1 --增加这个屏蔽错误,但是复不复合你的逻辑就不知道了
;
这个里面是什么啊?是不是定义错了???
b.room_id = room_id
变量名改一下
l_room_id
再试一下
这个错误很常见。