Available in versions: Dev (3.20) | Latest (3.19) | 3.18 | 3.17 | 3.16 | 3.15 | 3.14

XMLATTRIBUTES

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The XMLATTRIBUTES() function is used to create attributes inside of XMLELEMENT().

SELECT xmlelement(
  NAME element,
  xmlattributes('value' AS attr)
)
create.select(xmlelement("element",
        xmlattributes(val("value").as("attr"))
      ))
      .fetch();

The result would look like this:

+-------------------------+
| xmlelement              |
+-------------------------+
| <element attr="value"/> |
+-------------------------+

Dialect support

This example using jOOQ:

xmlelement("e", xmlattributes(val("value").as("attr")))

Translates to the following dialect specific expressions:

DB2, Oracle, Postgres, Teradata

xmlelement(
  NAME e,
  xmlattributes('value' AS attr)
)

SQLServer

(
  SELECT
    1 tag,
    NULL parent,
    'value' [e!1!attr]
  FOR XML EXPLICIT, TYPE
)

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

/* UNSUPPORTED */

(These are currently generated with jOOQ 3.20, see #10141), or translate your own on our website

References to this page

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo