存储过程中同一语句多个聚合函数时 into 用法
declare --声明变量 v_sum_cnt number(10); v_kxf_cnt number(10); v_bkxf_cnt number(10); begin --1.获取批次总量、可下发量、不可下发量 select count(1), sum(case when (a.customer_status is null or (a.latest_assigned_date <= add_months(sysdate,-6) and a.customer_status = 'assigned')) then 1 else 0 end),-6) and a.customer_status = 'assigned')) then 0 else 1 end) into v_sum_cnt,v_kxf_cnt,v_bkxf_cnt from cls_customer_info a,dm_custlist_upload_batch b where a.upload_batch_id = b.batch_id and a.upload_batch_id = IN_UPLOAD_BATCH_ID; --2. 添加其他业务逻辑代码... end; ----------------------分割线------------------------ 一开始这样写的: select count(1) into v_sum_cnt,-6) and a.customer_status = 'assigned')) then 1 else 0 end) into v_kxf_cnt,-6) and a.customer_status = 'assigned')) then 0 else 1 end) into v_bkxf_cnt from cls_customer_info a,dm_custlist_upload_batch b where a.upload_batch_id = b.batch_id and a.upload_batch_id = IN_UPLOAD_BATCH_ID ; 编译时就报错咯:编译错误PL/SQL:ORA-00934:groupfunctionisnotallowedhere. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |