mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-10-24 17:30:49 +00:00
8623cb232c
* CLICKHOUSE-4063: less manual html @ index.md * CLICKHOUSE-4063: recommend markdown="1" in README.md * CLICKHOUSE-4003: manually purge custom.css for now * CLICKHOUSE-4064: expand <details> before any print (including to pdf) * CLICKHOUSE-3927: rearrange interfaces/formats.md a bit * CLICKHOUSE-3306: add few http headers * Remove copy-paste introduced in #3392 * Hopefully better chinese fonts #3392 * get rid of tabs @ custom.css * Apply comments and patch from #3384 * Add jdbc.md to ToC and some translation, though it still looks badly incomplete * minor punctuation * Add some backlinks to official website from mirrors that just blindly take markdown sources * Do not make fonts extra light * find . -name '*.md' -type f | xargs -I{} perl -pi -e 's//g' {} * find . -name '*.md' -type f | xargs -I{} perl -pi -e 's/ sql/g' {} * Remove outdated stuff from roadmap.md * Not so light font on front page too * Refactor Chinese formats.md to match recent changes in other languages
34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
<a name="functions_arrayjoin"></a>
|
|
|
|
# arrayJoin function
|
|
|
|
This is a very unusual function.
|
|
|
|
Normal functions don't change a set of rows, but just change the values in each row (map).
|
|
Aggregate functions compress a set of rows (fold or reduce).
|
|
The 'arrayJoin' function takes each row and generates a set of rows (unfold).
|
|
|
|
This function takes an array as an argument, and propagates the source row to multiple rows for the number of elements in the array.
|
|
All the values in columns are simply copied, except the values in the column where this function is applied; it is replaced with the corresponding array value.
|
|
|
|
A query can use multiple `arrayJoin` functions. In this case, the transformation is performed multiple times.
|
|
|
|
Note the ARRAY JOIN syntax in the SELECT query, which provides broader possibilities.
|
|
|
|
Example:
|
|
|
|
``` sql
|
|
SELECT arrayJoin([1, 2, 3] AS src) AS dst, 'Hello', src
|
|
```
|
|
|
|
```
|
|
┌─dst─┬─\'Hello\'─┬─src─────┐
|
|
│ 1 │ Hello │ [1,2,3] │
|
|
│ 2 │ Hello │ [1,2,3] │
|
|
│ 3 │ Hello │ [1,2,3] │
|
|
└─────┴───────────┴─────────┘
|
|
```
|
|
|
|
|
|
[Original article](https://clickhouse.yandex/docs/en/query_language/functions/array_join/) <!--hide-->
|