I currently have the the following query:
select regexp_matches(name, 'foo') from table;
How can I rewrite this so that the regex is in the where like the following (not working):
select * from table where regexp_matches(name, 'foo');
Curren开发者_如何转开发t error message is: ERROR: argument of WHERE must be type boolean, not type text[] SQL state: 42804 Character: 29
Write instead:
select * from table where name ~ 'foo'
The '~' operator produces a boolean result for whether the regex matches or not rather than extracting the matching subgroups.
精彩评论