如何在Trino中过滤删除非英文字符 替代不可用~运算符的方法
Trino 不支持 PostgreSQL 风格的 ~ 正则匹配运算符,正则相关操作需要使用 Trino 内置的正则函数实现。
场景1:筛选出 medium 字段包含非英文字母、下划线的记录
对应你原有SQL的逻辑,修改后写法如下:
SELECT translationid, medium FROM translation WHERE regexp_like(medium, '[^A-Za-z_]')
场景2:筛选出 medium 字段仅包含英文字母、下划线的记录
如果是要过滤掉存在非法字符的行,写法如下:
SELECT translationid, medium FROM translation WHERE NOT regexp_like(medium, '[^A-Za-z_]')
场景3:直接删除 medium 字段中的非英文字母、下划线字符
如果需要直接清洗字段内容,使用 regexp_replace 函数即可:
SELECT translationid, regexp_replace(medium, '[^A-Za-z_]', '') AS medium FROM translation
内容的提问来源于stack exchange,提问作者Sriram
相关产品推荐
相关产品推荐

