首页 > 解决方案 > 如何在雪花中将撇号'视为字符串的一部分,而不是字符串结尾?

问题描述

可以肯定的是,我要问的是基本的,但如果字符串中有 ' (撇号),我很难处理字符串中的一系列字符。几个例子:

INSERT INTO SFAAP.WS_DIRBNK_DPST.PV_FRAUD_METRICS_03 VALUES ('MAYO FOUNDATION','AiO G17Onsi ra0g 7aDJ jWn9u2JvYR');
INSERT INTO SFAAP.WS_DIRBNK_DPST.PV_FRAUD_METRICS_03 VALUES ('KOHL'S', INC.,'gWE Q2bJhMn VXfB 2uNt'e, em3.');

问题是,我能够将 2 个字符串视为单独的,并且能够插入到相应的目标列中。但是当输入字符串本身有撇号时,雪花会在那里解释字符串的结尾,然后一切都会崩溃。

我尝试在前面使用@,三重',甚至尝试双撇号“但没有一个成功。非常感谢任何评论/帮助。

先感谢您。

标签: sqlstringspecial-characterssnowflake-cloud-data-platform

解决方案


将单引号加倍或使用反斜杠将其转义。这些中的任何一个都可以工作:

INSERT INTO SFAAP.WS_DIRBNK_DPST.PV_FRAUD_METRICS_03 VALUES ('KOHL''S'', INC.','gWE Q2bJhMn VXfB 2uNt''e, em3.');

INSERT INTO SFAAP.WS_DIRBNK_DPST.PV_FRAUD_METRICS_03 VALUES ('KOHL\'S\', INC.','gWE Q2bJhMn VXfB 2uNt\'e, em3.');

推荐阅读