JSON 中包含“$$”的 Snowflake 插入失败

Failed insert in Snowflake with JSON containing '$$'

我正在转义 JSON,然后再插入我的 Snowflake table。但是,如果 JSON 本身包含 Snowflake 转义引号 ($$),它将失败。有没有解决的办法?如果我从 JSON 中删除“$$”,那么它会成功插入,但是我需要保留原来的 JSON。有没有办法在不删除 $$ 字符的情况下解决这个问题?谢谢

insert into yaml_files
      select column1 as path,
      parse_json(column2) as yaml
      from values ('test',$${'example': 'blahblah','example2': 'asdf$lkj'}$$);

如评论所述,您可以对字符串使用单引号而不是 $$

重现错误:

select parse_json($${"a":"b$$c"}$$);

固定:

select parse_json('{"a":"b$$c"}');

如果字符串中有单引号,用\转义:

select parse_json('{"a":"b\'$$c"}');