Skip to content

Commit 62e7939

Browse files
committed
fix: format
1 parent b080919 commit 62e7939

File tree

1 file changed

+35
-34
lines changed
  • docs/cn/sql-reference/20-sql-functions/10-semi-structured-functions

1 file changed

+35
-34
lines changed

docs/cn/sql-reference/20-sql-functions/10-semi-structured-functions/flatten.md

Lines changed: 35 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
---
22
title: FLATTEN
33
---
4+
45
import FunctionDescription from '@site/src/components/FunctionDescription';
56

67
<FunctionDescription description="引入或更新: v1.2.213"/>
78

8-
将嵌套的JSON数据转换为表格格式,其中每个元素或字段都表示为单独的一行。
9+
将嵌套的 JSON 数据转换为表格格式,其中每个元素或字段都表示为单独的一行。
910

1011
## 语法
1112

@@ -16,37 +17,37 @@ import FunctionDescription from '@site/src/components/FunctionDescription';
1617
[ , MODE => 'OBJECT' | 'ARRAY' | 'BOTH' ] )
1718
```
1819

19-
| 参数/关键字 | 描述 | 默认值 |
20-
|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
21-
| INPUT | 指定要展平的JSON或数组数据。 | - |
22-
| PATH | 指定输入数据中要展平的数组或对象的路径。 | - |
23-
| OUTER | 如果设置为TRUE,即使结果为零的行仍将包含在输出中,但这些行的KEY、INDEX和VALUE列的值将设置为NULL。 | FALSE |
24-
| RECURSIVE | 如果设置为TRUE,函数将继续展平嵌套元素。 | FALSE |
25-
| MODE | 控制是仅展平对象('OBJECT')、仅展平数组('ARRAY'),还是两者都展平('BOTH')。 | 'BOTH' |
26-
| LATERAL | LATERAL是一个可选关键字,用于在FROM子句中引用LATERAL关键字左侧定义的列。LATERAL允许在前面的表表达式和函数之间进行交叉引用。 | - |
20+
| 参数/关键字 | 描述 | 默认值 |
21+
| ----------- | --------------------------------------------------------------------------------------------------------------------------------- | ------ |
22+
| INPUT | 指定要展平的 JSON 或数组数据。 | - |
23+
| PATH | 指定输入数据中要展平的数组或对象的路径。 | - |
24+
| OUTER | 如果设置为 TRUE,即使结果为零的行仍将包含在输出中,但这些行的 KEY、INDEX 和 VALUE 列的值将设置为 NULL。 | FALSE |
25+
| RECURSIVE | 如果设置为 TRUE,函数将继续展平嵌套元素。 | FALSE |
26+
| MODE | 控制是仅展平对象 ('OBJECT')、仅展平数组 ('ARRAY'),还是两者都展平 ('BOTH')。 | 'BOTH' |
27+
| LATERAL | LATERAL 是一个可选关键字,用于在 FROM 子句中引用 LATERAL 关键字左侧定义的列。LATERAL 允许在前面的表表达式和函数之间进行交叉引用。 | - |
2728

2829
## 输出
2930

30-
下表描述了FLATTEN函数的输出列
31+
下表描述了 FLATTEN 函数的输出列
3132

3233
:::note
33-
当与FLATTEN一起使用LATERAL关键字时,这些输出列可能不会显式提供,因为LATERAL引入了动态交叉引用,改变了输出结构。
34+
当与 FLATTEN 一起使用 LATERAL 关键字时,这些输出列可能不会显式提供,因为 LATERAL 引入了动态交叉引用,改变了输出结构。
3435
:::
3536

36-
|| 描述 |
37-
|-------|------------------------------------------------------------------------------------------|
38-
| SEQ | 与输入关联的唯一序列号。 |
39-
| KEY | 扩展值的键。如果展平的元素不包含键,则设置为NULL。 |
40-
| PATH | 展平元素的路径。 |
41-
| INDEX | 如果元素是数组,此列包含其索引;否则,设置为NULL。 |
42-
| VALUE | 展平元素的值。 |
43-
| THIS | 此列标识当前正在展平的元素。 |
37+
|| 描述 |
38+
| ----- | --------------------------------------------------- |
39+
| SEQ | 与输入关联的唯一序列号。 |
40+
| KEY | 扩展值的键。如果展平的元素不包含键,则设置为 NULL。 |
41+
| PATH | 展平元素的路径。 |
42+
| INDEX | 如果元素是数组,此列包含其索引;否则,设置为 NULL。 |
43+
| VALUE | 展平元素的值。 |
44+
| THIS | 此列标识当前正在展平的元素。 |
4445

4546
## 示例
4647

47-
### 示例1: 演示PATH、OUTER、RECURSIVE和MODE参数
48+
### 示例 1: 演示 PATH、OUTER、RECURSIVE 和 MODE 参数
4849

49-
此示例演示了FLATTEN函数在PATH、OUTER、RECURSIVE和MODE参数方面的行为
50+
此示例演示了 FLATTEN 函数在 PATH、OUTER、RECURSIVE 和 MODE 参数方面的行为
5051

5152
```sql
5253
SELECT
@@ -66,7 +67,7 @@ FROM
6667
1 │ name │ name │ NULL"John" │ {"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"} │
6768
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
6869

69-
-- PATH帮助从原始JSON数据中选择特定路径的元素
70+
-- PATH 帮助从原始 JSON 数据中选择特定路径的元素
7071
SELECT
7172
*
7273
FROM
@@ -85,7 +86,7 @@ FROM
8586
1NULL │ languages[2] │ 2"French" │ ["English","Spanish","French"] │
8687
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
8788

88-
-- RECURSIVE启用嵌套结构的递归展平
89+
-- RECURSIVE 启用嵌套结构的递归展平
8990
SELECT
9091
*
9192
FROM
@@ -98,19 +99,19 @@ FROM
9899
```
99100

100101
┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
101-
seq key path index value this
102+
│ seq key path index value this │
102103
├────────┼──────────────────┼──────────────────┼──────────────────┼──────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────┤
103-
1 │ address │ address NULL │ {"city":"New York","state":"NY"} │ {"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"} │
104-
1 │ city │ address.city NULL │ "New York" {"city":"New York","state":"NY"}
105-
1 │ state │ address.state NULL │ "NY" {"city":"New York","state":"NY"}
106-
1 │ languages │ languages NULL │ ["English","Spanish","French"] {"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"} │
107-
1 │ NULL │ languages[0] 0 │ "English" ["English","Spanish","French"]
108-
1 │ NULL │ languages[1] 1 │ "Spanish" ["English","Spanish","French"]
109-
1 │ NULL │ languages[2] 2 │ "French" ["English","Spanish","French"]
110-
1 │ name │ name NULL │ "John" {"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"} │
104+
│ 1 │ address │ address NULL │ `{"city":"New York","state":"NY"}``{"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"}`
105+
│ 1 │ city │ address.city NULL │ "New York" `{"city":"New York","state":"NY"}`
106+
│ 1 │ state │ address.state NULL │ "NY" `{"city":"New York","state":"NY"}`
107+
│ 1 │ languages │ languages NULL │ ["English","Spanish","French"] `{"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"}`
108+
│ 1 │ NULL │ languages[0] 0 │ "English" │ ["English","Spanish","French"]
109+
│ 1 │ NULL │ languages[1] 1 │ "Spanish" │ ["English","Spanish","French"]
110+
│ 1 │ NULL │ languages[2] 2 │ "French" │ ["English","Spanish","French"]
111+
│ 1 │ name │ name NULL │ "John" `{"address":{"city":"New York","state":"NY"},"languages":["English","Spanish","French"],"name":"John"}`
111112
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
112113

113-
114+
```sql
114115
-- MODE 指定是否仅展平对象 ('OBJECT')、仅展平数组 ('ARRAY') 或两者都展平 ('BOTH')。
115116
-- 在此示例中,使用 MODE => 'ARRAY',这意味着仅展平 JSON 数据中的数组。
116117
SELECT
@@ -201,4 +202,4 @@ FROM
201202
├───────────────────┼───────────────────┼───────────────────┤
202203
51.22.5
203204
└───────────────────────────────────────────────────────────┘
204-
```
205+
```

0 commit comments

Comments
 (0)