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

COLLECT

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

COLLECT() 聚合函数是 Oracle 厂商特定的标准 SQL ARRAY_AGG 函数的版本。它生成一个结构化类型的数组,该数组在后台实现为名义类型、系统生成的数组。它支持与 ORDER BY 子句一起使用。

以下示例使用辅助数据类型并将 COLLECT() 结果转换为该类型。

CREATE TYPE NUMBERS AS TABLE OF NUMBER(10);
SELECT CAST(collect(ID ORDER BY ID) AS NUMBERS);
FROM BOOK;
create.select(
         collect(BOOK.ID, NumbersRecord.class).orderBy(BOOK.ID))
      .from(BOOK)

产生

+--------------+
| collect      |
+--------------+
| [1, 2, 3, 4] |
+--------------+

反馈

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

The jOOQ Logo