【发布时间】:2019-09-25 13:16:22
【问题描述】:
我尝试使用通用正则表达式属性和NOT LIKE 子句查找特殊字符,但得到的结果令人困惑。研究表明,它的工作方式与在 SQL Server 或其他地方的工作方式不同。
- 用于查找是否有字符
- 用于查找是否有任何数字
- 用于查找是否有任何特殊字符
like '%[^0-9]%' 或 '%[^a-Z]%' 分别在查找是否存在非数字数据和是否存在非字母数据时效果不佳
SELECT column1 from some_table where column1 like '%[^0-9]%';
SELECT column1 from some_table where column1 like '%[^a-Z]%'
SELECT column1 from some_table where column1 like '%[^a-Z0-9]%'
还注意到人们使用 -> NOT like '%[^0-9]%'
【问题讨论】:
-
LIKE不支持 SQL 中的正则表达式
标签: sql regex postgresql data-cleaning