首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >字符串“abcdfghrdfthgywdcgrt”太长,将被截断

字符串“abcdfghrdfthgywdcgrt”太长,将被截断
EN

Stack Overflow用户
提问于 2020-08-10 16:24:32
回答 1查看 3.9K关注 0票数 1

查询:

CREATE TABLE SRC(SRC_STRING VARCHAR(20)) CREATE OR REPLACE TABLE TGT(tgt_STRING VARCHAR(10))

插入到SRC值(‘JKNHJYGHTFGRTYGHJ’)

插入到TGT(TGT_STRING)从源选择SRC_STRING::VARCHAR(10)

错误:字符串'JKNHJYGHTFGRTYGHJ‘太长,将被截断

有没有办法在将数据从高精度列插入到低精度列时启用强制长度(而不是复制命令)?

EN

回答 1

Stack Overflow用户

发布于 2020-08-10 21:18:03

我推荐使用SUBSTR( )函数来选择您想要的数据,示例如下,我取前10个字符(如果可用,如果只有5个字符,它将使用这5个字符)。

代码语言:javascript
运行
复制
CREATE OR REPLACE TEMPORARY TABLE SRC(
    src_string VARCHAR(20));

CREATE OR REPLACE TEMPORARY TABLE TGT(
    tgt_STRING VARCHAR(10));

INSERT INTO src 
VALUES('JKNHJYGHTFGRTYGHJ');

INSERT INTO tgt(tgt_string) 
SELECT SUBSTR(src_string, 1, 10) 
FROM SRC;

SELECT * FROM tgt; --JKNHJYGHTF

下面是关于该函数的文档:

https://docs.snowflake.com/en/sql-reference/functions/substr.html

我希望这个helps...Rich

附注:如果此(或其他)答案对您有帮助,请花点时间通过单击答案旁边的复选标记将其从“灰色显示”切换到“已填充”,从而“接受”该答案。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63336614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档