Using regexp_matches in the WHERE clause
От | Thomas Kellerer |
---|---|
Тема | Using regexp_matches in the WHERE clause |
Дата | |
Msg-id | k8vmbm$1fg$1@ger.gmane.org обсуждение исходный текст |
Ответы |
Re: Using regexp_matches in the WHERE clause
Re: Using regexp_matches in the WHERE clause |
Список | pgsql-sql |
Hi, I stumbled over this question on Stackoverflow http://stackoverflow.com/questions/13564369/postgresql-using-column-data-as-pattern-for-regexp-match And my initial reaction was, that this should be possible using regexp_matches. So I tried: SELECT * FROM some_table WHERE regexp_matches(somecol, 'foobar') is not null; However that resulted in: ERROR: argument of WHERE must not return a set Hmm, even though an array is not a set I can partly see what the problem is (although given the really cool array implementation in PostgreSQL I was a bit surprised). So I though, if I convert this to an integer, it should work: SELECT * FROM some_table WHERE array_length(regexp_matches(somecol, 'foobar'), 1) > 0 but that still results in the same error. But array_length() clearly returns an integer, so why does it still throw this error? I'm using 9.2.1 Regards Thomas
В списке pgsql-sql по дате отправления: