Vấn đề với truy vấn của bạn là nếu bạn sử dụng [^PLE]
nó sẽ khớp với bất kỳ ký tự nào khác ngoài P hoặc L hoặc E. Bạn đang tìm kiếm sự xuất hiện của PLE liên tiếp. Vì vậy, hãy sử dụng
select REGEXP_SUBSTR(colname,'(.+)PLE',1,1,null,1)
from tablename
Điều này trả về chuỗi con tính đến lần xuất hiện cuối cùng của PLE trong chuỗi.
Nếu chuỗi chứa nhiều phiên bản PLE và chỉ chuỗi con cho đến lần xuất hiện đầu tiên cần được trích xuất, hãy sử dụng
select REGEXP_SUBSTR(colname,'(.+?)PLE',1,1,null,1)
from tablename