Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Tách chuỗi sau dấu gạch ngang và lấy phần còn lại trong MySQL

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.