oracle - PL/SQL:ORA-06550:此处不允许使用组函数
问题描述
我有以下错误
使用此代码
DECLARE v_manager_id NUMERIC;
BEGIN
SELECT MANAGER_ID INTO v_manager_id, COUNT(MANAGER_ID)
FROM DEPARTMENTS
GROUP BY MANAGER_ID
HAVING COUNT(MANAGER_ID) > 1;
END;
解决方案
应该
DECLARE
v_manager_id NUMBER;
BEGIN
SELECT MANAGER_ID
INTO v_manager_id
FROM DEPARTMENTS
GROUP BY MANAGER_ID
HAVING COUNT(MANAGER_ID) > 1;
END;
或者,如果您需要 的值,则count(manager_id)
必须声明一个变量,例如
DECLARE
v_manager_id NUMBER;
v_count NUMBER
BEGIN
SELECT MANAGER_ID, COUNT(MANAGER_ID)
INTO v_manager_id, v_count
FROM DEPARTMENTS
GROUP BY MANAGER_ID
HAVING COUNT(MANAGER_ID) > 1;
END;
推荐阅读
- python - 为什么python很慢?我怎样才能让它更快?
- python - 在 for 循环中继续通过 Scipy CurveFit RuntimeError
- java - Java反射:为抽象类创建构造函数
- javascript - 如何实现图像旁边的这个主要内容?
- react-draft-wysiwyg - 每次单击按钮时更新另一个组件中的变量值
- python - 在 n 组中对 DataFrame 进行采样
- c# - 执行后能够恢复(将文件更新到 Blob 存储)和(通过 EF Core 添加/更新数据库)
- javascript - TFJS:无法读取未定义的属性“应用”
- sql - 使用左连接找到最接近值的有效方法
- php - php 中的错误,($baseObject) 必须是 DateTimeInterface 类型,bool 给定 c\