好的......在这里更改问题......我在尝试时遇到错误:
SELECT COUNT ( DISTINCT mid, regexp_replace(na_fname, '\\s*', '', 'g'), regexp_replace(na_lname, '\\s*', '', 'g'))
FROM masterfile;
是否可以在像这样的不同子句中使用regexp?
错误是这样的:
WARNING: nonstandard use of \\ in a string literal
LINE 1: ...CT COUNT ( DISTINCT mid, regexp_replace(na_fname, '\\s*', ''...
答案 0 :(得分:1)
select trim(regexp_replace(E'\tfoo \t bar baz ', E'\\s+', ' ', 'g'))
用一个空格替换所有(由于'g'
标志)空格(\s
)序列(+
),然后修剪它,返回:
"foo bar baz"
E
表示使用\
转义编码。
使用新编辑的问题,您可能正在寻找以下内容的查询:
select count(*) from (
select distinct
mid,
regexp_replace(na_fname, E'\\s*', '', 'g'),
regexp_replace(na_lname, E'\\s*', '', 'g')
from masterfile) as subquery;