현재 다음 쿼리가 있습니다.
select regexp_matches(name, 'foo') from table;
정규식이 다음과 같은 위치에 있도록 어떻게 다시 작성할 수 있습니까 (작동하지 않음).
select * from table where regexp_matches(name, 'foo');
현재 오류 메시지 : ERROR : WHERE의 인수는 text [] 유형이 아닌 부울 유형이어야합니다. SQL 상태 : 42804 문자 : 29
답변
대신 작성하십시오.
select * from table where name ~ 'foo'
‘~’연산자는 일치하는 하위 그룹을 추출하는 대신 정규식이 일치하는지 여부에 대한 부울 결과를 생성합니다.
답변
거기에서 일치 연산자를 사용하십시오.
select * from table where name ~ 'foo';