Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

wyrazenia regularne w sql?

0 views
Skip to first unread message

piotrek maksymiuk

unread,
Aug 16, 2001, 9:06:01 AM8/16/01
to
hejka.

chce zadac zapytanie postgresowi.
ma wyszukac slowo 'test'

czyli moge zrobic to tak:

select * from tabela where pole like '%test%'

ale wtedy znajdzie tez pola zawierajace np. slowo 'testowanie'.

moge tez zrobic tak:

select * from tabela where pole like '% test %'

ale wtedy nie znajdzie np pol zawierajacych 'test!', albo 'test?', albo
'test,'...

albo jeszcze sporo innych kombinacji..

czy da sie tak zadac zapytanie zeby znalazl wszystkie stringi 'test' ktore
nie sa fragmentem innych slow. ale moga miec wykrzykniki, przecinki,
kropki...
przydalyby sie jakies wyrazenia regularne, bo OR raczej wysiada.

--
pm

Marek Bartnikowski

unread,
Aug 16, 2001, 9:55:43 AM8/16/01
to piotrek maksymiuk
select * from tabela where pole ~ '[,\.\!]*test[,\.\!]*';

jesli chcesz, zeby ignorowal wielkosc liter uzyj ~* zamiast ~

--
Marek Bartnikowski <mailto:ma...@virt.pl>

PHP, C Prog. & PostgreSQL DBA
Polska Platforma Internetowa sp. z o.o. http://www.profnet.pl

piotrek maksymiuk

unread,
Aug 16, 2001, 10:01:11 AM8/16/01
to
> select * from tabela where pole ~ '[,\.\!]*test[,\.\!]*';
>
> jesli chcesz, zeby ignorowal wielkosc liter uzyj ~* zamiast ~

wow. wielkie dzieki :)

jakos nie moglem znalezc tego w dokumentacji.

--
pm

0 new messages