Tôi sẽ sử dụng REGEXP_SUBSTR
( tài liệu
), với các biểu thức chính quy. Ví dụ:
select regexp_substr('Chapter 18 Unit 10 Sect 16', 'Chapter \d*') from dual;
--Will return: Chapter 18
select regexp_substr('Chapter 18 Unit 10 Sect 16', 'Unit \d*') from dual;
--Will return: Unit 10
select regexp_substr('Chapter 18 Unit 10 Sect 16', 'Sect \d*') from dual;
--Will return: Sect 16
Tất nhiên nếu bạn lưu trữ Chapter xx Unit yy Sect zz
chuỗi trong bảng, sau đó bạn chỉ cần sử dụng loại truy vấn này để nhận được nhiều kết quả:
select regexp_substr(info_column, 'Chapter \d*') from mytable;
Bạn có thể thay thế \d
với [0-9]
hoặc [[:digit:]]