Hàm SUBSTRING_INDEX(str, delim, count) với count âm trả về phần chuỗi sau lần xuất hiện thứ |count| của delim tính từ cuối. Dùng -1 để lấy phần sau dấu phân cách cuối cùng.
Ví dụ minh họa
Tạo bảng:
mysql> CREATE TABLE DemoTable (StreetName TEXT);
Chèn dữ liệu:
mysql> INSERT INTO DemoTable VALUES('Paris Hill St.-CA-83745646');
mysql> INSERT INTO DemoTable VALUES('502 South Armstrong Street-9948443');
Xem dữ liệu:
mysql> SELECT * FROM DemoTable;
Kết quả
+------------------------------------+ | StreetName | +------------------------------------+ | Paris Hill St.-CA-83745646 | | 502 South Armstrong Street-9948443 | +------------------------------------+
Lấy phần sau dấu - cuối cùng:
mysql> SELECT SUBSTRING_INDEX(StreetName, '-', -1) AS Split FROM DemoTable;
Kết quả
+----------+ | Split | +----------+ | 83745646 | | 9948443 | +----------+
Ứng dụng: Tách mã bưu chính, mã sản phẩm, v.v. từ chuỗi ghép.