SQL - Regular Expressions
piątek, lipiec 11th, 2008
W oracle SQL możemy wymienić następujące funkcje:
REGEXP_INSTR, REGEXP_LIKE, REGEXP_REPLACE, REGEXP_SUBSTR, najlepszym sposobem opisu tych funkcji będą przykłady:
-) funkcja REGEXP_LIKE:
select imie, nazwisko from STUDENCI where REGEXP_LIKE(nazwisko, ‘[P|Ir|joz|mo]G[orz|ge]’);
to zapytanie zwróci imię, nazwisko gdzie nazwiska zaczynają sie na P lub IR lub joz lub mo lub zaczyna się na G a kończy na orz lub ge czyli Grzegorz lub George, lub wcześniejsze warunki Paweł, IRek, jozef, monika itd.
-) funkcja REGEXP_REPLACE:
select numer_NIP, REGEXP_REPLACE(numer_NIP, ‘([[.digit.]]{3})\.([[.digit.]]{3})\.([[.digit.]]{2})\.([[.digit.]]{2})’, ‘(\1-\2-\3-\4) from Pracownicy;
ten select spowoduje że NIP z postaci 123.234.75.74 zostanie wyświetlony jako 123-234-75-74