我是子查询分解子句的忠实粉丝。
WITH t1 as (select 1 as id from dual)
select * from t1;
oracle 12c 现在在 WITH 子句中包含一个 PL/SQL 声明部分
WITH
FUNCTION with_function(p_id IN NUMBER) RETURN NUMBER IS
BEGIN
RETURN p_id;
END;
SELECT with_function(id)
FROM t1
WHERE rownum = 1
但我似乎无法让他们一起工作,这可能吗?
WITH t1 as (select 1 as id from dual)
WITH FUNCTION with_function(p_id IN NUMBER) RETURN NUMBER IS
BEGIN
RETURN p_id;
END;
SELECT with_function(id)
FROM t1
WHERE rownum = 1;