sql - Oracle XMLCONCAT 将结果分配给变量
问题描述
为什么我不能使用以下语法将 XMLCONCAT 的结果分配给变量
:= XMLCONCAT (, );
我有以下示例,并且 XMLCONCAT 仅适用于 SELECT XMLCONCAT (, ) INTO 结构
create or replace function fn_xmlconcat
return xmltype
as
v1 xmltype;
v2 xmltype;
v3 xmltype;
begin
select xmlforest(t1.cid,t1.cname,t1.cbday) into v1 from tbl_xmlforest t1
where cid = 1 ;
select xmlforest(t2.cid,t2.cname,t2.cbday) into v2 from tbl_xmlforest2 t2
where cid = 4;
v3 := xmlconcat(v1,v2);
--select xmlconcat(v1,v2) into v3 from dual;
return v3;
end;
解决方案
这些函数中的大多数是“SQL/XML 标准”的一部分,因为它们是由 Oracle 内部的 SQL 引擎实现的。它是允许分配等的 PL/SQL 引擎。
通常区分是模糊的,因为在 PL/SQL 中我们实现了许多与 SQL 相同的函数,但不是全部,例如
x := 解码(....)
不会工作,但是
选择解码(...)
将要。
推荐阅读
- spring - SimpleJdbcCall 到函数返回 null
- python - 无限地保持(python)paho MQTT连接
- vue.js - VueJS - 计算属性没有设置器(但实际上有)
- java - Java 和 OpenAPI - 根据响应代码返回不同的有效负载
- docusignapi - 如何使用 Docu Sign API 工具包命名文档
- elasticsearch - 弹性:匹配一个数组成员中的所有标记
- c++ - 从非模板类调用专门的模板方法
- sql - 如何在 SQL 中找到与字符串开头匹配的记录?
- reactjs - 登录 ReactJS 后如何重定向到仪表板?
- java - JSONAssert - 在指定范围内进行比较