【发布时间】:2019-09-09 06:37:13
【问题描述】:
我有一个这样的查询:
SELECT *
FROM employees emp
WHERE emp.loc = 'US'
AND usr.fnctn('emp_sal', :sal1, :sal2);
此查询导致错误:
ORA-00920: 无效的关系运算符
我的函数只返回employees 表中的最高和最低值
【问题讨论】:
-
你的问题在哪里,你想达到什么目标?
-
非常抱歉先生。刚刚编辑过。
-
您不能在 sql 中使用布尔值,因此
fnctn必须返回其他内容,因此您需要一些关系来比较返回值。 -
你的函数返回两个值?不可能,除非它返回集合。
-
"docs.oracle.com/cd/B28359_01/appdev.111/b28370/…" - "避免在函数中使用 OUT 和 IN OUT。函数的目的是接受零个或多个参数并返回单个值。函数必须没有副作用,这会更改子程序非本地变量的值。”