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

JSON_ARRAY

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

JSON_ARRAY 函数用于从标量值生成简单的 JSON 数组,无需聚合(另请参见 JSON_ARRAYAGG)。

SELECT json_array(author.first_name, author.last_name)
FROM author
 
create.select(jsonArray(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME))
      .from(AUTHOR)
      .fetch();

结果如下

+----------------------+
| json_array           |
+----------------------+
| ["Paulo", "Coelho"]  |
| ["George", "Orwell"] |
+----------------------+

方言支持

此示例使用 jOOQ

jsonArray(val(1), val(2))

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

Aurora Postgres, Postgres, YugabyteDB

json_build_array(CAST(1 AS int), CAST(2 AS int))

BigQuery, DB2, DuckDB, H2, MariaDB, MySQL, Oracle, SQLite

json_array(1, 2)

ClickHouse

toJSONString(tuple(1, 2))

CockroachDB

json_build_array(CAST(1 AS int4), CAST(2 AS int4))

Snowflake

array_construct(coalesce(
  to_variant(1),
  parse_json('null')
), coalesce(
  to_variant(2),
  parse_json('null')
))

SQLServer

json_modify(
  json_modify('[]', 'append $', 1),
  'append $',
  2
)

Trino

CAST(ARRAY[
  CAST(1 AS json),
  CAST(2 AS json)
] AS json)

ASE, Access, Aurora MySQL, Databricks, Derby, Exasol, Firebird, HSQLDB, Hana, Informix, MemSQL, Redshift, SQLDataWarehouse, Sybase, Teradata, Vertica

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

反馈

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

The jOOQ Logo