我在oracle sql中尝试regexp_replace
函数。这是我的表格列中的示例字符串。
CV35 0DB AC
W2 4PL AC
OX17 7HP AC
DE55 4RF AC
GU13 9PU AC
W1D 7EG AC
CR8 2NE AC
我想在开头提取一个字母并跟随一个数字。所以根据我的方法只有
W2 4PL AC
W1D 7EG AC
必须保留。我应该强调,这个字符串中存在的数字也是文本。那是他们不是数字。在这里我尝试过:
select distinct aa.ny,regexp_replace(aa.ny,'^[A-Z]{1}[0-9]') from wos_source.address aa where upper(nu)='ENGLAND';
根据此查询,它只返回:
72046 AP 72046 AP
无论存在哪个角色,似乎都需要一切......
提前感谢...
答案 0 :(得分:0)
我认为你需要在where子句中使用REGEXP_LIKE:
select distinct aa.ny from wos_source.address aa
where REGEXP_LIKE (aa.ny, 'pattern')
and upper(nu)='ENGLAND';