Snowflake数据库VARCHAR列的度量单位是什么?

问题描述 投票:1回答:1

在Snowflake数据库数据定义语言中,当我指定VARCHAR(10)列时,长度“ 10”的度量单位是什么?是字节数还是字符数?

即,如果我要存储一个4字节的字符,是否需要指定VARCHAR(1)VARCHAR(4)

我正在这里查看文档,https://docs.snowflake.net/manuals/sql-reference/data-types-text.html,我知道

[VARCHAR列中可以存储的Unicode字符的最大数量取决于字符是单字节还是多字节:

如果未指定长度,则默认为最大长度。

Snowflake当前与常见的CHAR语义有所不同,因为比最大长度短的字符串最后没有空格填充。

但是,我仍然不确定长度说明符的度量单位是什么。

ddl varchar snowflake-data-warehouse
1个回答
0
投票

是字符,而不是字节或代码点。这是一个简单的示例:

create table t (x varchar(1)) as select '123' AS x;

String '123' is too long and would be truncated

对:

create or replace table t (x varchar(1)) as select '😊' AS x;

Table T successfully created.

笑脸Unicode字符是U+1F60A,大于一个字节。

© www.soinside.com 2019 - 2024. All rights reserved.