用regexp进行SQL sql查询

时间:2017-09-05 13:27:24

标签: postgresql

我有像

这样的专栏
Column1   column 2
Audy.       123
Baza.z.     675
Sco,da@.    432

我在这里尝试

  1. Select column2 from table where lower(column1)='audy';

  2. select column2 from table where lower(column1) regexp'[.,]' ='audy';

  3. 我需要使用sql或postgre sql中没有特殊字符的列数据,并且应该从where条件中获取regexp。

1 个答案:

答案 0 :(得分:0)

您可以使用regex_replace

select  column2 
from    table 
where   regexp_replace(lower(column1), '\W', '', 'g') = 'audy'

正则表达式\W匹配任何不是字母或数字的字符。标志'g'(全局)表示删除所有匹配,而不仅仅是第一个匹配。