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

Oracle Regexp không thành công trong SQL

Điều này là do Oracle chỉ hỗ trợ tiêu chuẩn biểu thức chính quy POSIX, thay vì cú pháp Perl mà bạn sử dụng trong ví dụ đầu tiên của mình.

Tài liệu Oracle: http://docs.oracle. com / cd / B19306_01 / appdev.102 / b14251 / adfns_regexp.htm # CHDJGBGG POSIX Regex Standard: http://pubs.opengroup.org/onlinepubs/007908799 /xbd/re.html

Chỉnh sửa:Như Alex Poole chỉ ra rằng Oracle thực sự hỗ trợ cú pháp Perl regex kể từ Oracle 10gR2. Thử ví dụ của bạn trên bản cài đặt 11gR2 cục bộ của tôi cho thấy rằng cú pháp của bạn sai, cách sau hoạt động tốt:

SELECT 1 FROM dual WHERE regexp_like('040', '^\d{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. ORA-00936 thiếu biểu thức

  2. Nhà phát triển SQL:Không thể thu thập thống kê hệ thống:không đủ đặc quyền

  3. Tham số JDBC CallableStatement và Oracle SYS_REFCURSOR IN?

  4. Sự khác biệt giữa Hàm bảng và Hàm Pipelined?

  5. Nâng cao tuyên bố