yiguolei commented on code in PR #2671: URL: https://github.com/apache/doris-website/pull/2671#discussion_r2246676682
########## i18n/zh-CN/docusaurus-plugin-content-docs/current/sql-manual/sql-functions/scalar-functions/array-functions/array-cum-sum.md: ########## @@ -5,50 +5,182 @@ } --- +## array_cum_sum + +<version since="2.0.0"> + + +</version> + ## 描述 -返回数组的累计和。数组中的`NULL`值会被跳过,并在结果数组的相同位置设置`NULL`。 +计算数组的累积和。函数会从左到右遍历数组,计算每个位置之前(包括当前位置)所有元素的和,返回一个与原数组等长的新数组。 ## 语法 + ```sql -ARRAY_CUM_SUM(<arr>) +array_cum_sum(ARRAY<T> arr) ``` -## 参数 -| 参数 | 说明 | -|---|---| -| `<arr>` | 用于计算累加和的数组 | +### 参数 + +- `arr`:ARRAY\<T> 类型,要计算累积和的数组。支持列名或常量值。 + +**T 支持的类型:** + - 数值类型:TINYINT、SMALLINT、INT、BIGINT、LARGEINT、FLOAT、DOUBLE、DECIMAL -## 返回值 -返回一个数组。特殊情况: -- 数组中的`NULL`值会被跳过,并在结果数组的相同位置设置`NULL`。 +### 返回值 -## 举例 +返回类型:ARRAY\<T> + +返回值含义: + +- 返回一个与输入数组等长的新数组,每个位置的值为原数组从开始到当前位置的所有元素之和 +- NULL:如果输入数组为 NULL + +使用说明: +- 函数会尝试将所有元素转换为兼容的数值类型进行累积和计算。仅支持以下类型的直接累积: + - 整数类型(TINYINT、SMALLINT、INT、BIGINT、LARGEINT) + - 浮点类型(FLOAT、DOUBLE) + - 十进制类型(DECIMALV2、DECIMALV3,包括 DECIMAL32、DECIMAL64、DECIMAL128I、DECIMAL256) +- 如果数组包含其他类型(如字符串、日期等),会尝试将元素转换为 DOUBLE 类型。转换失败的元素结果为 null,不参与累积和。 Review Comment: 这里,日期类型我们为什么要支持cast 成double啊? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
