sql - 如何在 RLIKE Hive 中转义单引号?双单引号不起作用
问题描述
我想转义 RLIKE 输入中的单引号。我像这样使用双单引号:
SELECT * FROM TABLE
WHERE column RLIKE 'o''brien'
但它使用"obrien"
而不是返回结果"o'brien"
。我也尝试过"\\'"
而不是双单引号,但这也不起作用。那么单引号的正确转义字符是什么?
解决方案
三种方法:
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
代码可以检查任何特殊字符。
推荐阅读
- python - 使用 python 创建 cassandra db 用户/角色
- javascript - 使用jquery ajax从url加载json文件的问题
- php - Cakephp 在 finder 中发出请求
- c++11 - CMake FindThreads 与现代 C++ 的正确用途是什么?
- python - 类或 __init__ 构造函数中的文档字符串?
- ios - Swift,我需要哪些项目设置和配置代码才能将 Objective C CocoaPod 与 swift 项目一起使用?
- javascript - 如果值为 true,则使用拼接删除数组项
- javascript - 隐藏所有其他子元素并添加关闭按钮
- python - Python - Matplotlib - 保持轴均匀和线性,并在网格上绘制点
- python - 使用 Ansible 进行 Vagrant 配置 - mysql_db 找不到 PyMySQL