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

Kiểm tra giá trị tồn tại trong danh sách phân cách bằng dấu phẩy trong MySQL

Để kiểm tra xem một giá trị có tồn tại trong danh sách phân cách bằng dấu phẩy, hãy dùng hàm FIND_IN_SET().

Cú pháp:

SELECT * FROM yourTableName WHERE FIND_IN_SET('yourValue', yourColumnName) > 0;

Trước tiên, tạo bảng:

mysql> CREATE TABLE existInCommaSeparatedList (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name VARCHAR(200)
    -> );

Chèn dữ liệu:

mysql> INSERT INTO existInCommaSeparatedList(Name) VALUES('John,Carol,Sam,Larry,Bob,David');
mysql> INSERT INTO existInCommaSeparatedList(Name) VALUES('Maxwell,Chris,James');
mysql> INSERT INTO existInCommaSeparatedList(Name) VALUES('Robert,Ramit');

Hiển thị dữ liệu:

mysql> SELECT * FROM existInCommaSeparatedList;

Kết quả:

+----+--------------------------------+
| Id | Name                           |
+----+--------------------------------+
|  1 | John,Carol,Sam,Larry,Bob,David |
|  2 | Maxwell,Chris,James            |
|  3 | Robert,Ramit                   |
+----+--------------------------------+

Truy vấn kiểm tra giá trị "Robert":

mysql> SELECT * FROM existInCommaSeparatedList WHERE FIND_IN_SET('Robert', Name) > 0;

Kết quả:

+----+--------------+
| Id | Name         |
+----+--------------+
|  3 | Robert,Ramit |
+----+--------------+