函数不支持排序规则

时间:2019-11-20 11:01:30

标签: sql snowflake-data-warehouse

我正在尝试在Snowflake中使用UPPER / LOWER函数,但收到错误消息“ Function UPPER不支持排序规则”。

我可以使用上/下功能吗?

谢谢

3 个答案:

答案 0 :(得分:2)

我能够使用UPPER()函数而不会出现错误(我的测试表上未指定排序规则);

从;选择上(field1);

https://docs.snowflake.net/manuals/sql-reference/functions/upper.html

查看归类文档,归类尚不支持此特定功能。查看支持的功能列表;

https://docs.snowflake.net/manuals/sql-reference/collation.html#limited-support-for-collation-in-built-in-functions

答案 1 :(得分:2)

您可以尝试使用COLLATE函数吗?

https://docs.snowflake.net/manuals/sql-reference/functions/collate.html

这建议您可以在排序规则中将字符大写以检查项目是否相同。就像是: COLLATE(MyField,'en-upper')

谢谢

答案 2 :(得分:0)

尝试通过将空字符串传递给 COLLATE 函数的 参数来删除列中的排序规则,然后将结果传递给 UPPER 函数,就像这样UPPER(COLLATE(COLLATED_COLUMN, ''))

我已经针对雪花中一些不支持整理的正则表达式相关函数测试了这个解决方案,值得一试。见using regexp_replace for replacing special characters in snowflake

来自秘鲁的问候!