出现错误 ORA-00909:参数数量无效

Getting error ORA-00909: invalid number of arguments

CREATE VIEW ITCC.release_testcase_count 
AS 
(
SELECT CONCAT(rtm.requirement_id,'-',tct.release_id) AS id,
       rtm.requirement_id AS requirement_id,
       tct.release_id AS release_id, 
       COUNT(tct.release_id) AS testcase_count
from testcase_version tcv 
  INNER JOIN tcr_catalog_tree_testcase tct ON tcv.id = tct.testcase_version_id 
  LEFT JOIN requirement_testcase_mapping rtm ON rtm.testcase_id=tcv.testcase_id
GROUP BY tct.release_id , rtm.requirement_id
);

相同的查询适用于 ms sql 和我的 sql,没有任何语法错误。我也想在 oracle 中执行它,但我收到同样的错误

Oracle CONCAT 函数只接受 两个 ,而不是三个或更多参数。不要使用 CONCAT,只需使用连接运算符:

CREATE VIEW ITCC.release_testcase_count AS (
    SELECT rtm.requirement_id || '-' || tct.release_id AS id,
    ...
)

或者,如果你真的想在这里使用 CONCAT,那么你可以将它们链接在一起:

CREATE VIEW ITCC.release_testcase_count AS (
    SELECT CONCAT(rtm.requirement_id, CONCAT('-', tct.release_id)) AS id,
    ...
)