Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak dołączyć znak specjalny w Oracle SQL, gdy w kolumnie zostanie znalezione dokładne dopasowanie?

W Oracle REGEXP , nie ma \b wzór, aby dopasować granice słów. Powszechnie stosowane rozwiązanie wygląda mniej więcej tak.

SELECT id,
       REGEXP_REPLACE (msg_info, '(^|\s|\W)(gold)($|\s|\W)', '\1~\2\3', 1,0,'i')
FROM   yourtable;  

DEMO

Spowoduje to wyszukanie słowa gold na początku ciągu, otoczonego spacją po obu stronach, końcem ciągu lub znakiem niebędącym słowem (takim jak ? lub -). \1,\2,\3 reprezentują znaki dopasowane w pierwszym, drugim i trzecim nawiasie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sprawdź, czy bieżąca data jest między dwiema datami Oracle SQL

  2. Wydano SQL Developer 4.1.3

  3. Drukuj pola rekordów w PL/SQL

  4. Czy „Wybierz” zawsze porządkuje według klucza podstawowego?

  5. jak możemy pogrupować od 17:00 wczoraj do 17:00 dzisiaj zapisy do dzisiejszej daty?