可用版本: Dev (3.21) | 最新 (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14

XMLELEMENT

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

XMLELEMENT() 函数用于创建 XML 元素,可能带有属性 (参见 XMLATTRIBUTES())

SELECT
  xmlelement(NAME e1) AS e1,
  xmlelement(NAME e2, xmlattributes('1' AS a)) AS e2,
  xmlelement(NAME e3, 'text-content') AS e3,
  xmlelement(NAME e4, xmlelement(NAME nested)) AS e4
 
create.select(
         xmlelement("e1").as("e1"),
         xmlelement("e2", xmlattributes(val("1").as("a"))).as("e2"),
         xmlelement("e3", val("text-content")).as("e3"),
         xmlelement("e4", xmlelement("nested")).as("e4"))
      .fetch();

结果如下

+-------+-------------+-----------------------+--------------------+
| e1    | e2          | e3                    | e4                 |
+-------+-------------+-----------------------+--------------------+
| <e1/> | <e2 a="1"/> | <e3>text-content</e3> | <e4><nested/></e4> |
+-------+-------------+-----------------------+--------------------+

方言支持

此示例使用 jOOQ

xmlelement("e1", val("text-content"))

翻译成以下特定方言的表达式

DB2, Oracle, Postgres, Teradata

xmlelement(NAME e1, 'text-content')

SQLServer

(
  SELECT
    1 tag,
    NULL parent,
    'text-content' [e1!1]
  FOR XML EXPLICIT, TYPE
)

ASE, Access, Aurora MySQL, Aurora Postgres, BigQuery, ClickHouse, CockroachDB, Databricks, Derby, DuckDB, Exasol, Firebird, H2, HSQLDB, Hana, Informix, MariaDB, MemSQL, MySQL, Redshift, SQLDataWarehouse, SQLite, Snowflake, Sybase, Trino, Vertica, YugabyteDB

/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL

引用此页

反馈

您对此页面有任何反馈吗? 我们很乐意听取您的意见!

The jOOQ Logo