Skip to content

Commit 25cafa3

Browse files
๐Ÿ’ฌGenerate LLM translations (#2093)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 1439c5e commit 25cafa3

File tree

5 files changed

+175
-56
lines changed

5 files changed

+175
-56
lines changed

โ€Ždocs/cn/guides/55-performance/01-virtual-column.mdโ€Ž

Lines changed: 58 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,50 @@ import EEFeature from '@site/src/components/EEFeature';
77

88
<EEFeature featureName='VIRTUAL COLUMN'/>
99

10-
Virtual Column ๆ˜ฏไธ€็ง็ป“ๆž„๏ผŒ้€š่ฟ‡ๆๅ– [Variant](/sql/sql-reference/data-types/variant) ๆ•ฐๆฎไธญ็š„ๅตŒๅฅ—ๅญ—ๆฎต๏ผŒๅนถๅฐ†่ฟ™ไบ›ๆ•ฐๆฎๅญ˜ๅ‚จๅœจๅ•็‹ฌ็š„ๅญ˜ๅ‚จๆ–‡ไปถไธญๆฅๅฝขๆˆใ€‚ๅฝ“ๆ‚จๅฎšๆœŸๆŸฅ่ฏข Variant ๆ•ฐๆฎไธญ็š„็‰นๅฎšๅตŒๅฅ—ๅญ—ๆฎตๆ—ถ๏ผŒ่ฏท่€ƒ่™‘ไฝฟ็”จ Virtual Column๏ผŒไปฅๅฎž็Žฐไปฅไธ‹ไผ˜ๅŠฟ๏ผš
10+
# Databend ไธญ็š„่™šๆ‹Ÿๅˆ—๏ผšๅŠ ้€ŸๅŠ็ป“ๆž„ๅŒ–ๆ•ฐๆฎ็š„ๆŸฅ่ฏข
1111

12-
- **ๅŠ ้€ŸๆŸฅ่ฏขๅค„็†**: Virtual Column ้€š่ฟ‡ๆถˆ้™ค้ๅކๆ•ดไธชๅตŒๅฅ—็ป“ๆž„ไปฅๅฎšไฝๆ‰€้œ€ๆ•ฐๆฎ็š„้œ€ๆฑ‚๏ผŒไปŽ่€Œ็ฎ€ๅŒ–ไบ†ๆŸฅ่ฏข่ฟ‡็จ‹ใ€‚ไปŽ Virtual Column ็›ดๆŽฅๆฃ€็ดขๆ•ฐๆฎไธŽ่ฎฟ้—ฎๅธธ่ง„ๅˆ—็š„่ฟ‡็จ‹็ฑปไผผ๏ผŒไปŽ่€Œๆ˜พ่‘—ๅŠ ้€Ÿไบ†ๆŸฅ่ฏขๆ‰ง่กŒใ€‚
12+
Databend ไธญ็š„่™šๆ‹Ÿๅˆ—ๆไพ›ไบ†ไธ€็งๅผบๅคง่€Œ่‡ชๅŠจ็š„ๆ–นๅผ๏ผŒๅฏไปฅๆ˜พ่‘—ๅŠ ้€ŸๅฏนๅŠ็ป“ๆž„ๅŒ–ๆ•ฐๆฎ็š„ๆŸฅ่ฏข๏ผŒๅฐคๅ…ถๆ˜ฏๅญ˜ๅ‚จๅœจ [Variant](/sql/sql-reference/data-types/variant) ๆ•ฐๆฎ็ฑปๅž‹ไธญ็š„ๆ•ฐๆฎใ€‚ๆญคๅŠŸ่ƒฝๅŠจๆ€ไผ˜ๅŒ–ๆ•ฐๆฎ่ฎฟ้—ฎ๏ผŒไปŽ่€ŒๅŠ ๅฟซๆŸฅ่ฏขๆ‰ง่กŒ้€Ÿๅบฆๅนถๅ‡ๅฐ‘่ต„ๆบๆถˆ่€—ใ€‚
1313

14-
- **ๅ‡ๅฐ‘ๅ†…ๅญ˜ไฝฟ็”จ**: Variant ๆ•ฐๆฎ้€šๅธธๅŒ…ๅซ่ฎธๅคšๅ†…้ƒจๅญ—ๆฎต๏ผŒ่ฏปๅ–ๆ‰€ๆœ‰่ฟ™ไบ›ๅญ—ๆฎตๅฏ่ƒฝไผšๅฏผ่‡ดๅคง้‡ๅ†…ๅญ˜ๆถˆ่€—ใ€‚้€š่ฟ‡่ฝฌๆขไธบ่ฏปๅ– Virtual Column๏ผŒๅฏไปฅๆ˜พ่‘—ๅ‡ๅฐ‘ๅ†…ๅญ˜ไฝฟ็”จ๏ผŒไปŽ่€Œ้™ไฝŽๆฝœๅœจ็š„ๅ†…ๅญ˜ๆบขๅ‡บ้ฃŽ้™ฉใ€‚
14+
## ๆฆ‚่ฟฐ
15+
16+
ๅฝ“ๅค„็† `VARIANT` ๅˆ—ไธญ็š„ๅตŒๅฅ—ๆ•ฐๆฎ็ป“ๆž„ๆ—ถ๏ผŒ่ฎฟ้—ฎ็‰นๅฎšๆ•ฐๆฎ็‚นๅฏ่ƒฝไผšๆˆไธบๆ€ง่ƒฝ็“ถ้ขˆใ€‚Databend ็š„่™šๆ‹Ÿๅˆ—้€š่ฟ‡่‡ชๅŠจ่ฏ†ๅˆซๅ’Œไผ˜ๅŒ–ๅตŒๅฅ—ๅญ—ๆฎตๆฅ่งฃๅ†ณๆญค้—ฎ้ข˜ใ€‚่™šๆ‹Ÿๅˆ—ๅฏไปฅ็›ดๆŽฅๆฃ€็ดขๆ•ฐๆฎ๏ผŒ็ฑปไผผไบŽ่ฎฟ้—ฎๅธธ่ง„ๅˆ—๏ผŒ่€Œๆ— ้œ€้‡ๅค้ๅކๆ•ดไธชๅตŒๅฅ—็ป“ๆž„ใ€‚
17+
18+
Databend ๅœจๆ•ฐๆฎๆๅ–ๆœŸ้—ด่‡ชๅŠจๆฃ€ๆต‹ `VARIANT` ๅˆ—ไธญ็š„ๅตŒๅฅ—ๅญ—ๆฎตใ€‚ๅฆ‚ๆžœๆŸไธชๅญ—ๆฎตๆปก่ถณไธ€ๅฎš็š„ๅญ˜ๅœจ้˜ˆๅ€ผ๏ผŒๅฎƒๅฐ†ๅœจๅŽๅฐ็‰ฉๅŒ–ไธบ่™šๆ‹Ÿๅˆ—๏ผŒ็กฎไฟๆ•ฐๆฎ้šๆ—ถๅฏ็”จไบŽไผ˜ๅŒ–ๆŸฅ่ฏขใ€‚ๆญค่ฟ‡็จ‹ๆ˜ฏๅฎŒๅ…จ่‡ชๅŠจ็š„๏ผŒๆ— ้œ€ๆ‰‹ๅŠจ้…็ฝฎๆˆ–ๅนฒ้ข„ใ€‚
1519

1620
![Alt text](/img/sql/virtual-column.png)
1721

18-
## ็ฎก็† Virtual Column
22+
## ๆ€ง่ƒฝไผ˜ๅŠฟ
23+
24+
* **ๆ˜พ่‘—็š„ๆŸฅ่ฏขๅŠ ้€Ÿ๏ผš** ่™šๆ‹Ÿๅˆ—้€š่ฟ‡็›ดๆŽฅ่ฎฟ้—ฎๅตŒๅฅ—ๅญ—ๆฎต๏ผŒๆ˜พ่‘—ๅ‡ๅฐ‘ไบ†ๆŸฅ่ฏขๆ‰ง่กŒๆ—ถ้—ดใ€‚่ฟ™ๆถˆ้™คไบ†ไธบๆฏไธชๆŸฅ่ฏข้ๅކๅคๆ‚ JSON ็ป“ๆž„็š„ๅผ€้”€ใ€‚
25+
* **้™ไฝŽ่ต„ๆบๆถˆ่€—๏ผš** ้€š่ฟ‡ไป…็‰ฉๅŒ–ๅฟ…่ฆ็š„ๅตŒๅฅ—ๅญ—ๆฎต๏ผŒ่™šๆ‹Ÿๅˆ—ๆœ€ๅคง้™ๅบฆๅœฐๅ‡ๅฐ‘ไบ†ๆŸฅ่ฏขๅค„็†ๆœŸ้—ด็š„ๅ†…ๅญ˜ๆถˆ่€—ใ€‚่ฟ™ๆ้ซ˜ไบ†่ต„ๆบๅˆฉ็”จ็އ๏ผŒๅนถๆ”นๅ–„ไบ†ๆ•ดไฝ“็ณป็ปŸๆ€ง่ƒฝใ€‚
26+
* **่‡ชๅŠจไผ˜ๅŒ–๏ผš** Databend ่‡ชๅŠจ่ฏ†ๅˆซๅญ—ๆฎตๅนถๅฐ†ๅ…ถ็‰ฉๅŒ–ไธบ่™šๆ‹Ÿๅˆ—ใ€‚็„ถๅŽ๏ผŒๆŸฅ่ฏขไผ˜ๅŒ–ๅ™จไผš่‡ชๅŠจ้‡ๅ†™ๆŸฅ่ฏข๏ผŒไปฅไพฟๅœจ่ฎฟ้—ฎ `VARIANT` ๅˆ—ไธญ็š„ๆ•ฐๆฎๆ—ถๅˆฉ็”จ่ฟ™ไบ›่™šๆ‹Ÿๅˆ—ใ€‚
27+
* **้€ๆ˜Žๆ“ไฝœ๏ผš** ่™šๆ‹Ÿๅˆ—็š„ๅˆ›ๅปบๅ’Œ็ฎก็†ๅฏน็”จๆˆทๅฎŒๅ…จ้€ๆ˜Žใ€‚ๆŸฅ่ฏขไผš่‡ชๅŠจไผ˜ๅŒ–๏ผŒ่€Œๆ— ้œ€ๆ›ดๆ”นๆŸฅ่ฏข่ฏญๆณ•ๆˆ–ๆ•ฐๆฎๅŠ ่ฝฝ่ฟ‡็จ‹ใ€‚ๆŸฅ่ฏขไผ˜ๅŒ–ๅ™จ่ดŸ่ดฃ้‡ๅ†™ๆŸฅ่ฏขไปฅๅˆฉ็”จ่™šๆ‹Ÿๅˆ—ใ€‚
28+
29+
## ๅทฅไฝœๅŽŸ็†
1930

20-
Databend ๆไพ›ไบ†ๅ„็งๅ‘ฝไปคๆฅ็ฎก็† Virtual Columnใ€‚ๆœ‰ๅ…ณ่ฏฆ็ป†ไฟกๆฏ๏ผŒ่ฏทๅ‚่ง [VIRTUAL COLUMN](/sql/sql-reference/data-types/variant/)ใ€‚
31+
1. **ๆ•ฐๆฎๆๅ–๏ผš** ๆๅ–ๅŒ…ๅซ `VARIANT` ๅˆ—็š„ๆ•ฐๆฎๆ—ถ๏ผŒDatabend ไผšๅˆ†ๆž JSON ๆ•ฐๆฎ็š„็ป“ๆž„ใ€‚
32+
2. **ๅญ—ๆฎตๅญ˜ๅœจๆฃ€ๆŸฅ๏ผš** Databend ๆฃ€ๆŸฅๅตŒๅฅ—ๅญ—ๆฎตๆ˜ฏๅฆๆปก่ถณไธ€ๅฎš็š„ๅญ˜ๅœจ้˜ˆๅ€ผใ€‚
33+
3. **่™šๆ‹Ÿๅˆ—็‰ฉๅŒ–๏ผš** ๅฆ‚ๆžœๆปก่ถณๅญ—ๆฎตๅญ˜ๅœจ้˜ˆๅ€ผ๏ผŒ็ณป็ปŸไผš่‡ชๅŠจๅœจๅŽๅฐๅฐ†่ฏฅๅญ—ๆฎต็‰ฉๅŒ–ไธบ่™šๆ‹Ÿๅˆ—ใ€‚
34+
4. **ๆŸฅ่ฏขไผ˜ๅŒ–๏ผš** ๅฝ“ๆŸฅ่ฏข่ฎฟ้—ฎ `VARIANT` ๅˆ—ไธญ็š„ๅตŒๅฅ—ๅญ—ๆฎตๆ—ถ๏ผŒๆŸฅ่ฏขไผ˜ๅŒ–ๅ™จไผš่‡ชๅŠจ้‡ๅ†™ๆŸฅ่ฏข๏ผŒไปฅไฝฟ็”จ็›ธๅบ”็š„่™šๆ‹Ÿๅˆ—ๆฅๆ›ดๅฟซๅœฐๆฃ€็ดขๆ•ฐๆฎใ€‚
35+
36+
## ้‡่ฆๆณจๆ„ไบ‹้กน
37+
38+
* **ๅผ€้”€๏ผš** ่™ฝ็„ถ่™šๆ‹Ÿๅˆ—้€šๅธธๅฏไปฅๆ้ซ˜ๆŸฅ่ฏขๆ€ง่ƒฝ๏ผŒไฝ†ๅฎƒไปฌ็กฎๅฎžไผšๅผ•ๅ…ฅไธ€ไบ›ๅญ˜ๅ‚จๅ’Œ็ปดๆŠคๅผ€้”€ใ€‚Databend ไผš่‡ชๅŠจๅนณ่กก่™šๆ‹Ÿๅˆ—็š„ไผ˜ๅŠฟไธŽๆญคๅผ€้”€๏ผŒไปฅ็กฎไฟๆœ€ไฝณๆ€ง่ƒฝใ€‚
39+
* **ๅฎž้ชŒๆ€งๅŠŸ่ƒฝ๏ผš** ่™šๆ‹Ÿๅˆ—็›ฎๅ‰ๆ˜ฏไธ€้กนๅฎž้ชŒๆ€งๅŠŸ่ƒฝใ€‚้ป˜่ฎคๆƒ…ๅ†ตไธ‹ๅค„ไบŽ็ฆ็”จ็Šถๆ€ใ€‚่ฆๅฏ็”จ่™šๆ‹Ÿๅˆ—๏ผŒๅฟ…้กปๅฐ† `enable_experimental_virtual_column` ่ฎพ็ฝฎไธบ `1`๏ผš
40+
* **่‡ชๅŠจๅˆทๆ–ฐ๏ผš** ๆ’ๅ…ฅๆ•ฐๆฎๅŽ๏ผŒ่™šๆ‹Ÿๅˆ—ๅฐ†่‡ชๅŠจๅˆทๆ–ฐใ€‚ๅฆ‚ๆžœๆ‚จไธๆƒณ่‡ชๅŠจ็”Ÿๆˆ่™šๆ‹Ÿๅˆ—ๆ•ฐๆฎ๏ผŒๅฏไปฅๅฐ† `enable_refresh_virtual_column_after_write` ่ฎพ็ฝฎไธบ `0` ไปฅ็ฆ็”จ่™šๆ‹Ÿๅˆ—็š„็”Ÿๆˆใ€‚ๅฏไปฅไฝฟ็”จ refresh virtual column ๅ‘ฝไปคๅฎŒๆˆๅผ‚ๆญฅๅˆทๆ–ฐใ€‚ๆœ‰ๅ…ณ่ฏฆ็ป†ไฟกๆฏ๏ผŒ่ฏทๅ‚่ง [REFRESH VIRTUAL COLUMN](/sql/sql-commands/ddl/virtual-column/refresh-virtual-column)ใ€‚
41+
* **ๆ˜พ็คบ่™šๆ‹Ÿๅˆ—๏ผš** ๆ‚จๅฏไปฅ้€š่ฟ‡ [SHOW VIRTUAL COLUMNS](/sql/sql-commands/ddl/virtual-column/show-virtual-columns) ๅ‘ฝไปคๆŸฅ็œ‹ๆœ‰ๅ…ณ่™šๆ‹Ÿๅˆ—็š„ไฟกๆฏ๏ผŒๅนถไธ”ๅฏไปฅ้€š่ฟ‡ [FUSE_VIRTUAL_COLUMN](/sql/sql-functions/system-functions/fuse_virtual_column) ็ณป็ปŸๅ‡ฝๆ•ฐๆŸฅ็œ‹ๆœ‰ๅ…ณ่™šๆ‹Ÿๅˆ—ๅ…ƒๆ•ฐๆฎ็š„ไฟกๆฏใ€‚
2142

2243
## ไฝฟ็”จ็คบไพ‹
2344

24-
ๆญค็คบไพ‹ๆผ”็คบไบ† Virtual Column ็š„ๅฎž้™…ไฝฟ็”จๅŠๅ…ถๅฏนๆŸฅ่ฏขๆ‰ง่กŒ็š„ๅฝฑๅ“๏ผš
45+
ๆญค็คบไพ‹ๆผ”็คบไบ†่™šๆ‹Ÿๅˆ—็š„ๅฎž้™…ไฝฟ็”จๅŠๅ…ถๅฏนๆŸฅ่ฏขๆ‰ง่กŒ็š„ๅฝฑๅ“๏ผš
2546

2647
```sql
27-
-- ๅˆ›ๅปบไธ€ไธชๅไธบ 'test' ็š„่กจ๏ผŒๅ…ถไธญๅŒ…ๅซ็ฑปๅž‹ไธบ Variant ็š„ๅˆ— 'id' ๅ’Œ 'val'ใ€‚
28-
CREATE TABLE test(id int, val variant);
48+
SET enable_experimental_virtual_column=1;
2949

30-
-- ไธบ 'val' ๅˆ—ไธญ็š„็‰นๅฎšๅ…ƒ็ด ๅˆ›ๅปบ Virtual Columnใ€‚
31-
CREATE VIRTUAL COLUMN (
32-
val ['name'], -- ๆๅ– 'name' ๅญ—ๆฎตใ€‚
33-
val ['tags'] [0], -- ๆๅ– 'tags' ๆ•ฐ็ป„ไธญ็š„็ฌฌไธ€ไธชๅ…ƒ็ด ใ€‚
34-
val ['pricings'] [0] ['type'] -- ๆๅ– 'pricings' ๆ•ฐ็ป„ไธญ็ฌฌไธ€ไธช pricing ็š„ 'type' ๅญ—ๆฎตใ€‚
35-
) FOR test;
50+
-- Create a table named 'test' with columns 'id' and 'val' of type Variant.
51+
CREATE TABLE test(id int, val variant);
3652

37-
-- ๅฐ†็คบไพ‹่ฎฐๅฝ•ไธŽ Variant ๆ•ฐๆฎๆ’ๅ…ฅๅˆฐ 'test' ่กจไธญใ€‚
53+
-- Insert sample records into the 'test' table with Variant data.
3854
INSERT INTO
3955
test
4056
VALUES
@@ -65,10 +81,9 @@ INSERT INTO test SELECT * FROM test;
6581
INSERT INTO test SELECT * FROM test;
6682
INSERT INTO test SELECT * FROM test;
6783

68-
-- ๅˆทๆ–ฐ Virtual Column
69-
REFRESH VIRTUAL COLUMN FOR test;
84+
-- Show the virtual columns
7085

71-
-- ่งฃ้‡Š็”จไบŽไปŽ่กจไธญ้€‰ๆ‹ฉ็‰นๅฎšๅญ—ๆฎต็š„ๆŸฅ่ฏขๆ‰ง่กŒ่ฎกๅˆ’ใ€‚
86+
-- Explain the query execution plan for selecting specific fields from the table.
7287
EXPLAIN
7388
SELECT
7489
val ['name'],
@@ -79,21 +94,21 @@ FROM
7994

8095
-[ EXPLAIN ]-----------------------------------
8196
Exchange
82-
โ”œโ”€โ”€ output columns: [test.val['name'] (#2), test.val['tags'][0] (#3), test.val['pricings'][0]['type'] (#4)]
97+
โ”œโ”€โ”€ output columns: [test.val['name'] (#3), test.val['pricings'][0]['type'] (#5), test.val['tags'][0] (#8)]
8398
โ”œโ”€โ”€ exchange type: Merge
8499
โ””โ”€โ”€ TableScan
85-
โ”œโ”€โ”€ table: default.book_db.test
86-
โ”œโ”€โ”€ output columns: [val['name'] (#2), val['tags'][0] (#3), val['pricings'][0]['type'] (#4)]
100+
โ”œโ”€โ”€ table: default.default.test
101+
โ”œโ”€โ”€ output columns: [val['name'] (#3), val['pricings'][0]['type'] (#5), val['tags'][0] (#8)]
87102
โ”œโ”€โ”€ read rows: 160
88-
โ”œโ”€โ”€ read size: 4.96 KiB
89-
โ”œโ”€โ”€ partitions total: 16
90-
โ”œโ”€โ”€ partitions scanned: 16
91-
โ”œโ”€โ”€ pruning stats: [segments: <range pruning: 6 to 6>, blocks: <range pruning: 16 to 16>]
103+
โ”œโ”€โ”€ read size: 1.69 KiB
104+
โ”œโ”€โ”€ partitions total: 6
105+
โ”œโ”€โ”€ partitions scanned: 6
106+
โ”œโ”€โ”€ pruning stats: [segments: <range pruning: 6 to 6>, blocks: <range pruning: 6 to 6>]
92107
โ”œโ”€โ”€ push downs: [filters: [], limit: NONE]
93108
โ”œโ”€โ”€ virtual columns: [val['name'], val['pricings'][0]['type'], val['tags'][0]]
94109
โ””โ”€โ”€ estimated rows: 160.00
95110

96-
-- ่งฃ้‡Š็”จไบŽไป…ไปŽ่กจไธญ้€‰ๆ‹ฉ 'name' ๅญ—ๆฎต็š„ๆŸฅ่ฏขๆ‰ง่กŒ่ฎกๅˆ’ใ€‚
111+
-- Explain the query execution plan for selecting only the 'name' field from the table.
97112
EXPLAIN
98113
SELECT
99114
val ['name']
@@ -108,23 +123,28 @@ Exchange
108123
โ”œโ”€โ”€ table: default.book_db.test
109124
โ”œโ”€โ”€ output columns: [val['name'] (#2)]
110125
โ”œโ”€โ”€ read rows: 160
111-
โ”œโ”€โ”€ read size: 1.70 KiB
126+
โ”œโ”€โ”€ read size: < 1 KiB
112127
โ”œโ”€โ”€ partitions total: 16
113128
โ”œโ”€โ”€ partitions scanned: 16
114129
โ”œโ”€โ”€ pruning stats: [segments: <range pruning: 6 to 6>, blocks: <range pruning: 16 to 16>]
115130
โ”œโ”€โ”€ push downs: [filters: [], limit: NONE]
116131
โ”œโ”€โ”€ virtual columns: [val['name']]
117132
โ””โ”€โ”€ estimated rows: 160.00
118133

119-
-- ๆ˜พ็คบ็ณป็ปŸไธญๅฎšไน‰็š„ๆ‰€ๆœ‰ Virtual Columnใ€‚
120-
SHOW VIRTUAL COLUMNS;
121-
122-
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
123-
โ”‚ database โ”‚ table โ”‚ virtual_columns โ”‚
124-
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
125-
โ”‚ default โ”‚ test โ”‚ val['name'], val['pricings'][0]['type'], val['tags'][0] โ”‚
126-
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
127-
128-
-- ๅˆ ้™คไธŽ 'test' ่กจๅ…ณ่”็š„ Virtual Columnใ€‚
129-
DROP VIRTUAL COLUMN FOR test;
134+
-- Display all the auto generated virtual columns.
135+
SHOW VIRTUAL COLUMNS WHERE table='test';
136+
137+
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
138+
โ”‚ database โ”‚ table โ”‚ source_column โ”‚ virtual_column_id โ”‚ virtual_column_name โ”‚ virtual_column_type โ”‚
139+
โ”‚ String โ”‚ String โ”‚ String โ”‚ UInt32 โ”‚ String โ”‚ String โ”‚
140+
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
141+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000000 โ”‚ ['id'] โ”‚ UInt64 โ”‚
142+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000001 โ”‚ ['name'] โ”‚ String โ”‚
143+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000002 โ”‚ ['pricings'][0]['price'] โ”‚ String โ”‚
144+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000003 โ”‚ ['pricings'][0]['type'] โ”‚ String โ”‚
145+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000004 โ”‚ ['pricings'][1]['price'] โ”‚ String โ”‚
146+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000005 โ”‚ ['pricings'][1]['type'] โ”‚ String โ”‚
147+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000006 โ”‚ ['tags'][0] โ”‚ String โ”‚
148+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000007 โ”‚ ['tags'][1] โ”‚ String โ”‚
149+
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
130150
```

โ€Ždocs/cn/sql-reference/00-sql-reference/31-system-tables/system-virtual-columns.mdโ€Ž

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,15 @@ import FunctionDescription from '@site/src/components/FunctionDescription';
1111
ๅฆ่ฏทๅ‚้˜…๏ผš[SHOW VIRTUAL COLUMNS](../../10-sql-commands/00-ddl/07-virtual-column/show-virtual-columns.md)
1212

1313
```sql
14+
SET enable_experimental_virtual_column=1;
15+
1416
SELECT * FROM system.virtual_columns;
1517

16-
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
17-
โ”‚ database โ”‚ table โ”‚ virtual_columns โ”‚ created_on โ”‚ updated_on โ”‚
18-
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
19-
โ”‚ default โ”‚ test โ”‚ val['name'] โ”‚ 2023-12-25 21:24:26.127790 โ”‚ 2023-12-25 21:24:38.455268 โ”‚
20-
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
18+
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
19+
โ”‚ database โ”‚ table โ”‚ source_column โ”‚ virtual_column_id โ”‚ virtual_column_name โ”‚ virtual_column_type โ”‚
20+
โ”‚ String โ”‚ String โ”‚ String โ”‚ UInt32 โ”‚ String โ”‚ String โ”‚
21+
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
22+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000000 โ”‚ ['id'] โ”‚ UInt64 โ”‚
23+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000001 โ”‚ ['name'] โ”‚ String โ”‚
24+
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
2125
```

โ€Ždocs/cn/sql-reference/10-sql-commands/00-ddl/07-virtual-column/refresh-virtual-column.mdโ€Ž

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@ import EEFeature from '@site/src/components/EEFeature';
1111

1212
<EEFeature featureName='VIRTUAL COLUMN'/>
1313

14-
ๅˆทๆ–ฐ่กจ็š„ virtual columnsใ€‚ๅœจไปฅไธ‹ๆƒ…ๅ†ตไธ‹๏ผŒvirtual columns ้œ€่ฆๅˆทๆ–ฐ๏ผš
14+
Databend ไธญ็š„ `REFRESH VIRTUAL COLUMN` ๅ‘ฝไปค็”จไบŽๆ˜พๅผ่งฆๅ‘็Žฐๆœ‰่กจ็š„ virtual column ็š„ๅˆ›ๅปบใ€‚่™ฝ็„ถ Databend ไผš่‡ชๅŠจ็ฎก็†ๆ–ฐๆ•ฐๆฎ็š„ virtual column๏ผŒไฝ†ๅœจๆŸไบ›็‰นๅฎšๆƒ…ๅ†ตไธ‹๏ผŒ้œ€่ฆๆ‰‹ๅŠจๅˆทๆ–ฐๆ‰่ƒฝๅ……ๅˆ†ๅˆฉ็”จๆญคๅŠŸ่ƒฝใ€‚
1515

16-
- ๅœจไธบๅทฒๅŒ…ๅซ Variant ๆ•ฐๆฎ็š„่กจๅˆ›ๅปบ virtual columns ๅŽ๏ผŒ้œ€่ฆๅˆทๆ–ฐ virtual columnsใ€‚
17-
- ไฟฎๆ”น่กจ็š„ virtual columns ๆ—ถ๏ผŒๅœจไฟฎๆ”นๅŽๅˆทๆ–ฐๅฎƒไปฌใ€‚
18-
- ๅฆ‚ๆžœ `enable_refresh_virtual_column_after_write` ่ฎพ็ฝฎไธบ 1๏ผˆ้ป˜่ฎค๏ผ‰๏ผŒๅˆ™ๅœจๆ•ฐๆฎๆ›ดๆ–ฐๅŽไผš่‡ชๅŠจๅˆทๆ–ฐ่กจ็š„ virtual columnsใ€‚ไฝ†ๆ˜ฏ๏ผŒๅฆ‚ๆžœๆœชๅฏ็”จๆญค่ฎพ็ฝฎ๏ผŒๅˆ™้œ€่ฆๆ‰‹ๅŠจๅˆทๆ–ฐ virtual columnsใ€‚
16+
## ไฝ•ๆ—ถไฝฟ็”จ `REFRESH VIRTUAL COLUMN`
17+
18+
- **ๅœจๅฏ็”จๅŠŸ่ƒฝไน‹ๅ‰ๅทฒๅญ˜ๅœจ็š„่กจ๏ผš** ๅฆ‚ๆžœไฝ ็š„่กจๅŒ…ๅซๅœจๅฏ็”จ virtual column ๅŠŸ่ƒฝ*ไน‹ๅ‰*๏ผˆๆˆ–ๅœจๅ‡็บงๅˆฐๅ…ทๆœ‰่‡ชๅŠจ virtual column ๅˆ›ๅปบ็š„็‰ˆๆœฌไน‹ๅ‰๏ผ‰ๅˆ›ๅปบ็š„ `VARIANT` ๆ•ฐๆฎ๏ผŒๅˆ™้œ€่ฆๅˆทๆ–ฐ virtual column ไปฅๅฏ็”จๆŸฅ่ฏขๅŠ ้€Ÿใ€‚Databend ไธไผš่‡ชๅŠจไธบ่ฟ™ไบ›่กจไธญๅทฒๅญ˜ๅœจ็š„ๆ•ฐๆฎๅˆ›ๅปบ virtual columnใ€‚
19+
- **็ฆ็”จๅ†™ๅ…ฅๆ—ถ่‡ชๅŠจๅˆทๆ–ฐ๏ผš** ๅฆ‚ๆžœๅœจๆ•ฐๆฎๆ‘„ๅ–ๆœŸ้—ดๅฐ† `enable_refresh_virtual_column_after_write` ่ฎพ็ฝฎไธบ `0`๏ผˆ็ฆ็”จ๏ผ‰๏ผŒๅˆ™ Databend ๅฐ†*ไธไผš*ๅœจๅ†™ๅ…ฅๆ•ฐๆฎๆ—ถ่‡ชๅŠจๅˆ›ๅปบ virtual columnใ€‚ๅœจ่ฟ™็งๆƒ…ๅ†ตไธ‹๏ผŒๅฆ‚ๆžœๅธŒๆœ›ไปŽๆ€ง่ƒฝๆ”น่ฟ›ไธญๅ—็›Š๏ผŒๅˆ™ๅฟ…้กปๅœจๅŠ ่ฝฝๆ•ฐๆฎๅŽๆ‰‹ๅŠจๅˆทๆ–ฐ virtual columnใ€‚
1920

2021
## ่ฏญๆณ•
2122

@@ -25,8 +26,35 @@ REFRESH VIRTUAL COLUMN FOR <table>
2526

2627
## ็คบไพ‹
2728

28-
ๆญค็คบไพ‹ๅˆทๆ–ฐๅไธบโ€œtestโ€็š„่กจ็š„ virtual columns๏ผš
29+
ๆญค็คบไพ‹ๅˆทๆ–ฐๅไธบโ€œtestโ€็š„่กจ็š„ virtual column๏ผš
2930

3031
```sql
32+
SET enable_experimental_virtual_column=1;
33+
34+
SET enable_refresh_virtual_column_after_write=0;
35+
36+
CREATE TABLE test(id int, val variant);
37+
38+
INSERT INTO
39+
test
40+
VALUES
41+
(
42+
1,
43+
'{"id":1,"name":"databend"}'
44+
),
45+
(
46+
2,
47+
'{"id":2,"name":"databricks"}'
48+
);
49+
3150
REFRESH VIRTUAL COLUMN FOR test;
51+
52+
SHOW VIRTUAL COLUMNS WHERE table = 'test';
53+
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
54+
โ”‚ database โ”‚ table โ”‚ source_column โ”‚ virtual_column_id โ”‚ virtual_column_name โ”‚ virtual_column_type โ”‚
55+
โ”‚ String โ”‚ String โ”‚ String โ”‚ UInt32 โ”‚ String โ”‚ String โ”‚
56+
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
57+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000000 โ”‚ ['id'] โ”‚ UInt64 โ”‚
58+
โ”‚ default โ”‚ test โ”‚ val โ”‚ 3000000001 โ”‚ ['name'] โ”‚ String โ”‚
59+
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
3260
```

0 commit comments

Comments
ย (0)