aiaiDBA

加微信获取免费职业规划+学习资料,了解年薪50万的DBA是如何练成的

13718043309

010-86462881

PLS-00412: list of values not allowed as argument to this function or procedure

PLS-00412: list of values not allowed as argument to this function or procedure
Cause: A parenthesized list of values separated by commas (that is, an aggregate) was used in the wrong context. For example, the following usage is invalid: WHERE (col1, col2) > (SELECT col3, col4 FROM my_table ...) However, an equal sign can take a list of values and a subquery as left- and right-hand-side arguments, respectively. So, the following usage is valid: WHERE (col1, col2) = (SELECT col3, col4 FROM my_table ...)
Action: Rewrite the expression. For example, the clause WHERE (col1, col2) > (SELECT col3, col4 FROM my_table ...) can be rewritten as WHERE col1 > (SELECT col3 FROM my_table ...) AND col2 > (SELECT col4 FROM my_table ...)

请先 登录 后评论

1 个回答

小智
PLS-00412:不允许作为此函数或过程参数的值列表,
.原因:在错误的上下文中使用了以逗号分隔的值(即聚合)的括号列表。例如,以下用法无效:WHERE(col1,col2)>(SELECT col3,col4 FROM my_table ...)但是,等号可以获取值列表和子查询作为左侧和右侧论据。所以,以下用法是有效的:WHERE(col1,col2)=(SELECT col3,col4 FROM my_table ...),
.操作:重写表达式。例如,WHERE(col1,col2)>(SELECT col3,col4 FROM my_table ...)的子句可以被重写为WHERE col1>(SELECT col3 FROM my_table ...)AND col2>(SELECT col4 FROM my_table ... ),
.
请先 登录 后评论