首页 > 解决方案 > 如何在 RLIKE Hive 中转义单引号?双单引号不起作用

问题描述

我想转义 RLIKE 输入中的单引号。我像这样使用双单引号:

SELECT * FROM TABLE
WHERE column RLIKE 'o''brien'

但它使用"obrien"而不是返回结果"o'brien"。我也尝试过"\\'"而不是双单引号,但这也不起作用。那么单引号的正确转义字符是什么?

标签: sqlhivespecial-charactershiveqlrlike

解决方案


三种方法:

1 将整个正则表达式放入双引号中,单引号被屏蔽在双引号内:

where column rlike "o'brien"

另请参阅:https ://stackoverflow.com/a/66175603/2700344

2 使用 unicode \u0027

where column rlike 'o\\u0027brien'

3 使用十六进制 \x27

where column rlike 'o\\x27brien'

如果您知道它的代码,则使用\\x\\u代码可以检查任何特殊字符。


推荐阅读