Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cách nối một ký tự đặc biệt trong Oracle SQL khi tìm thấy kết quả khớp chính xác trong cột

Trong Oracle REGEXP , không có \b mô hình để phù hợp với ranh giới từ. Một giải pháp thường được sử dụng trông giống như thế này.

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

DEMO

Thao tác này tìm kiếm từ vàng ở đầu chuỗi, được bao quanh bởi khoảng trắng ở hai bên, cuối chuỗi hoặc ký tự không phải từ (chẳng hạn như? Hoặc -). \1,\2,\3 đại diện cho các ký tự được so khớp trong dấu ngoặc đơn thứ nhất, thứ 2 và thứ 3.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gọi một THỦ TỤC được lưu trữ trong Toad

  2. Cách thêm một vào chuỗi trong oracle

  3. ORA-00942:bảng hoặc chế độ xem không tồn tại cho bảng và cột chữ hoa / thường

  4. thay đổi trạng thái tài khoản người dùng Oracle từ EXPIRE (GRACE) thành OPEN

  5. Thứ tự SQL theo các phần tử từ mệnh đề IN