Hàm FIND_IN_SET trong MySQL

Trong bài này mình sẽ hướng dẫn cách sử dụng hàm FIND_IN_SET trong MySQL thông qua cú pháp và ví dụ thực tế.

1. Mô tả

Hàm FIND_IN_SET trả về vị trí của chuỗi trong danh sách chuỗi được phân tách bằng dấu phẩy.

2. Cú pháp

Cú pháp của hàm FIND_IN_SET trong MySQL là:

FIND_IN_SET( string, string_list )

Trong đó:

string: Chuỗi cần tìm.

string_list: Danh sách các giá trị chuỗi được phân tách bằng dấu phẩy cần tìm kiếm.

Lưu ý:

  • Nếu không tìm thấy string trong string_list, hàm FIND_IN_SET sẽ trả về 0.
  • Nếu string là NULL, hàm FIND_IN_SET sẽ trả về NULL.
  • Nếu string_list là một chuỗi rỗng, hàm FIND_IN_SET sẽ trả về 0.
  • Nếu string_list là NULL, hàm FIND_IN_SET sẽ trả về NULL

3. Version

Hàm FIND_IN_SET có thể được sử dụng trong các phiên bản sau của MySQL:

  • MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23

4. Ví dụ

mysql> SELECT FIND_IN_SET('c', 'a,b,c,d,e,f');
Ket qua: 3

mysql> SELECT FIND_IN_SET('C', 'a,b,c,d,e,f');
Ket qua: 3

mysql> SELECT FIND_IN_SET('h', 'a,b,c,d,e,f,g,h');
Ket qua: 8

mysql> SELECT FIND_IN_SET(3,'1,2,3,4,5');
Ket qua: 3

mysql> SELECT FIND_IN_SET('j', 'a,b,c,d,e,f,g,h');
Ket qua: 0

mysql> SELECT FIND_IN_SET('a', '');
Ket qua: 0

mysql> SELECT FIND_IN_SET(null, 'a,b,c,d,e,f,g,h');
Ket qua: NULL

mysql> SELECT FIND_IN_SET('b', null);
Ket qua: NULL

 

Nguồn: freetuts.net