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

Tìm chuỗi kết thúc bằng số trong MySQL dùng REGEXP

Để lọc các chuỗi kết thúc bằng chữ số (0-9), sử dụng toán tử REGEXP với mẫu [[:digit:]]$.

Cú pháp

SELECT * FROM ten_bang WHERE ten_cot REGEXP '[[:digit:]]$';

Ví dụ minh họa

Tạo bảng:

mysql> CREATE TABLE StringEndsWithNumber (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> UserId VARCHAR(20),
    -> UserName VARCHAR(20)
    -> );

Chèn dữ liệu (mix kết thúc bằng chữ/số):

mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('123User', 'John');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('User456', 'Larry');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('User789', 'John');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('0981User', 'Carol');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('User999', 'Bob');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('User1290', 'David');
mysql> INSERT INTO StringEndsWithNumber(UserId, UserName) VALUES('User456', 'James');

Dữ liệu gốc:

+----+----------+----------+
| Id | UserId   | UserName |
+----+----------+----------+
|  1 | 123User  | John     |
|  2 | User456  | Larry    |
|  3 | User789  | John     |
|  4 | 0981User | Carol    |
|  5 | User999  | Bob      |
|  6 | User1290 | David    |
|  7 | User456  | James    |
+----+----------+----------+

Lọc chuỗi kết thúc bằng số:

mysql> SELECT * FROM StringEndsWithNumber WHERE UserId REGEXP '[[:digit:]]$';

Kết quả (5/7 hàng):

+----+----------+----------+
| Id | UserId   | UserName |
+----+----------+----------+
|  2 | User456  | Larry    |
|  3 | User789  | John     |
|  5 | User999  | Bob      |
|  6 | User1290 | David    |
|  7 | User456  | James    |
+----+----------+----------+

Giải thích REGEXP

  • [[:digit:]]: Lớp ký tự số (tương đương [0-9])
  • $: Neo cuối chuỗi (end of string)
  • REGEXP: Toán tử so khớp regex (case-insensitive mặc định)

Các mẫu REGEXP hữu ích khác

MẫuÝ nghĩa
^[[:digit:]]Bắt đầu bằng số
[[:alpha:]]$Kết thúc bằng chữ cái
^[[:alpha:]]+$Chỉ chứa chữ cái
[[:alnum:]]Chữ hoặc số