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

MySQL - Chọn tất cả các bản ghi nếu nó chứa số cụ thể?

Để chọn tất cả các bản ghi có các số cụ thể, hãy sử dụng FIND_IN_SET () trong MySQL.

Hãy để chúng tôi tạo một bảng -

Ví dụ

mysql> create table demo73
   -> (
   -> interest_id varchar(100),
   -> interest_name varchar(100)
   -> );
Query OK, 0 rows affected (1.48

Chèn một số bản ghi vào bảng với sự trợ giúp của lệnh insert -

Ví dụ

mysql> insert into demo73 values("100,101,103,105","SSC");
Query OK, 1 row affected (0.34

mysql> insert into demo73 values("105,103,1005,1003,104","Computer");
Query OK, 1 row affected (0.10

mysql> insert into demo73 values("110,105,104,111","Novel");
Query OK, 1 row affected (0.31

Hiển thị các bản ghi từ bảng bằng cách sử dụng câu lệnh select -

Ví dụ

mysql> select *from demo73;

Điều này sẽ tạo ra kết quả sau -

Đầu ra

+-----------------------+---------------+
| interest_id           | interest_name |
+-----------------------+---------------+
| 100,101,103,105       | SSC           |
| 105,103,1005,1003,104 | Computer      |
| 110,105,104,111       | Novel         |
+-----------------------+---------------+
3 rows in set (0.00

Sau đây là truy vấn để chọn tất cả các bản ghi nếu nó chứa số cụ thể -

Ví dụ

mysql> select *from demo73 where find_in_set("103",interest_id) > 0;

Điều này sẽ tạo ra kết quả sau -

Đầu ra

+-----------------------+---------------+
| interest_id           | interest_name |
+-----------------------+---------------+
| 100,101,103,105       |          SSC  |
| 105,103,1005,1003,104 |    Computer   |
+-----------------------+---------------+
2 rows in set (0.00 sec)