【发布时间】:2015-07-02 07:27:47
【问题描述】:
我编写了一个存储过程,希望将两个计数值添加到集合中,代码如下:
PROCEDURE generate(code_in in VARCHAR2
, value_1 out NUMBER
, value_2 out NUMBER) is
BEGIN
SELECT
COUNT(CASE WHEN type = 'A' THEN 1 ELSE NULL END) INTO value_1
, COUNT(CASE WHEN type IN ('B','D') THEN 1 ELSE NULL END) INTO value_2
FROM table
WHERE code = code_in;
END generate;
但是在运行代码时出现以下错误:
ORA-00934:此处不允许使用群组功能
如果我删除第二个COUNT,存储过程编译得很好,但是当我添加第二行时,我得到了错误。
谁能帮忙解释一下为什么会这样?请注意,我在 Oracle 方面的经验很少。
【问题讨论】:
-
你能评论一下你为什么不赞成这个问题吗?
标签: oracle plsql oracle11g select-into