Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào chúng ta có thể trích xuất một chuỗi con từ giá trị của một cột trong bảng MySQL?

Chúng ta có thể áp dụng bất kỳ hàm nào như SUBSTRING (), MID () hoặc SUBSTR () để trích xuất một chuỗi con từ giá trị của một cột. Trong trường hợp này, chúng ta phải cung cấp tên của cột làm đối số đầu tiên của hàm, tức là tại vị trí của chuỗi, chúng ta phải cung cấp tên của cột. Ví dụ sau sẽ chứng minh điều đó.

Ví dụ

Giả sử chúng ta muốn trích xuất một chuỗi con từ cột "Tên" của bảng "Sinh viên" thì nó có thể được thực hiện bằng cách sử dụng các hàm khác nhau như sau -

mysql> Select name, SUBSTR(name,2,4) from student;
+---------+------------------+
| name    | SUBSTR(name,2,4) |
+---------+------------------+
| Gaurav  | aura             |
| Aarav   | arav             |
| Harshit | arsh             |
| Gaurav  | aura             |
| Yashraj | ashr             |
+---------+------------------+
5 rows in set (0.00 sec)

mysql> Select name, MID(name,2,4) from student;
+---------+---------------+
| name    | MID(name,2,4) |
+---------+---------------+
| Gaurav  | aura          |
| Aarav   | arav          |
| Harshit | arsh          |
| Gaurav  | aura          |
| Yashraj | ashr          |
+---------+---------------+
5 rows in set (0.00 sec)

mysql> Select name, substring(name,2,4) from student;
+---------+---------------------+
| name    | substring(name,2,4) |
+---------+---------------------+
| Gaurav  | aura                |
| Aarav   | arav                |
| Harshit | arsh                |
| Gaurav  | aura                |
| Yashraj | ashr                |
+---------+---------------------+
5 rows in set (0.00 sec)

Chúng ta cũng có thể áp dụng / s điều kiện trong các truy vấn trên như sau -

mysql> Select name, substring(name,2,4) from student WHERE address = 'delhi';
+---------+---------------------+
| name    | substring(name,2,4) |
+---------+---------------------+
| Gaurav  | aura                |
| Harshit | arsh                |
+---------+---------------------+
2 rows in set (0.16 sec)

mysql> Select name, MID(name,2,4) from student WHERE address = 'delhi';
+---------+---------------+
| name    | MID(name,2,4) |
+---------+---------------+
| Gaurav  | aura          |
| Harshit | arsh          |
+---------+---------------+
2 rows in set (0.00 sec)

mysql> Select name, SUBSTR(name,2,4) from student WHERE address = 'delhi';
+---------+------------------+
| name    | SUBSTR(name,2,4) |
+---------+------------------+
| Gaurav  | aura             |
| Harshit | arsh             |
+---------+------------------+
2 rows in set (0.00 sec)