Обсуждение: select a range of data

Поиск
Список
Период
Сортировка

select a range of data

От
Jessica Richard
Дата:
If I have a column with a value like "abc2457", "efg1234",

how do I select col from table where col like 'a[a-z]c24[0-9]7"?

How do I handle the range bracket in the query?

Thanks.


Boardwalk for $500? In 2007? Ha!
Play Monopoly Here and Now (it's updated for today's economy) at Yahoo! Games.

Re: select a range of data

От
Tom Lane
Дата:
Jessica Richard <rjessil@yahoo.com> writes:
> how do I select col from table where col like 'a[a-z]c24[0-9]7"?
> How do I handle the range bracket in the query?

Using LIKE, you don't.  However there are two other types of
pattern-matching operators that do understand character classes:

http://www.postgresql.org/docs/8.2/static/functions-matching.html

            regards, tom lane

Re: select a range of data

От
Jon Sime
Дата:
Jessica Richard wrote:
> If I have a column with a value like "abc2457", "efg1234",
>
> how do I select col from table where col like 'a[a-z]c24[0-9]7"?
>
> How do I handle the range bracket in the query?

You can use the regular expression operator(s), like so:

     select *
     from table
     where column ~ 'a[a-z]c24[0-9]7';

For the full details:
http://www.postgresql.org/docs/8.2/interactive/functions-matching.html#AEN9312

-Jon

--
Senior Systems Developer
Media Matters for America
http://mediamatters.org/