Trang chủ » MySQL » Cách sử dụng Hàm FIND_IN_SET trong MySQL

MySQL

Cách sử dụng Hàm FIND_IN_SET trong MySQL

14/12/2023

Hàm FIND_IN_SET trong MySQL được sử dụng để tìm kiếm một giá trị trong một chuỗi có các giá trị được phân tách bởi dấu phẩy (,). Nếu giá trị được tìm thấy, hàm sẽ trả về vị trí của nó trong chuỗi; nếu không, nó sẽ trả về 0.

Cú pháp

Cú pháp của hàm FIND_IN_SET như sau:


FIND_IN_SET(search_value, list)

Trong đó:

  • search_value là giá trị cần tìm kiếm trong chuỗi.
  • list là chuỗi chứa các giá trị được phân tách bởi dấu phẩy.

Ví dụ

Dưới đây là một số ví dụ minh họa:

1. Tìm kiếm giá trị trong chuỗi:


SELECT FIND_IN_SET('apple', 'apple,orange,banana,grape') AS position;

Kết quả: 1 (vị trí của 'apple' trong chuỗi là 1).

2. Sử dụng trong điều kiện WHERE:


SELECT * FROM fruits WHERE FIND_IN_SET('banana', fruit_list) > 0;

Giả sử có một bảng "fruits" với cột "fruit_list" chứa các giá trị được phân tách bởi dấu phẩy. Câu truy vấn này trả về tất cả các hàng trong đó 'banana' là một phần của chuỗi.

3. Xử lý giá trị không tồn tại trong chuỗi:


SELECT FIND_IN_SET('pear', 'apple,orange,banana,grape') AS position;

Kết quả: 0 (vì 'pear' không tồn tại trong chuỗi).

Hàm FIND_IN_SET thường được sử dụng trong các trường hợp khi bạn lưu trữ danh sách các giá trị trong một cột dạng chuỗi và muốn thực hiện tìm kiếm hoặc lọc dữ liệu dựa trên các giá trị trong danh sách đó.

 

 

Bài viết liên quan


Trong quá trình học tập và làm việc, nhiều khi chúng ta thêm dữ liệu từ file Excel, trong quá trình thao tác có thể có các bản ghi bị trùng và các bạn muốn tìm kiếm và xóa các bản ghi trùng lặp đó đi, thì các bạn có thể theo dõi bài viết sau của SoftVietDesign.com các bạn nhé.
Có nhiều loại dữ liệu khác nhau được hỗ trợ trong MySQL. Trong số đó đôi khi chúng ta cần dùng đến kiểu dữ liệu DATE để lưu trữ giá trị dữ liệu. Kiểu dữ liệu DATE được sử dụng cho các giá trị có phần ngày nhưng không có phần thời gian.

22:38 . 10/01/2024

Hàm WEEKDAY() trong MySQL được sử dụng để tìm giá trị ngày trong tuần cho một ngày cụ thể. Nếu ngày là NULL thì hàm WEEKDAY() sẽ trả về NULL. Ngược lại, nó trả về chỉ mục cho một ngày, tức là 0 cho Thứ Hai, 1 cho Thứ Ba,... 6 cho Chủ Nhật.

22:38 . 30/12/2023

Hàm SEC_TO_TIME() trong MySQL được sử dụng để chuyển đổi một giá trị thời gian (trong đơn vị giây) thành dạng chuỗi thời gian.

22:33 . 30/12/2023

Hàm YEARWEEK() trong MySQL được sử dụng để trả về một số nguyên đại diện cho tuần trong năm, dựa trên một giá trị ngày hoặc ngày/tháng cung cấp

22:30 . 30/12/2023

Hàm YEAR() trong MySQL được sử dụng để trích xuất phần năm từ một giá trị ngày hoặc ngày/tháng

22:10 . 30/12/2023

Hàm LTRIM() trong MySQL được sử dụng để loại bỏ các ký tự khoảng trắng từ phía bên trái (bắt đầu) của một chuỗi ký tự.

22:03 . 30/12/2023

Hàm DAYOFWEEK() trong MySQL được sử dụng để trả về một số nguyên đại diện cho ngày trong tuần (từ 1 đến 7), với Chủ nhật là ngày đầu tiên (1) và Thứ Bảy là ngày cuối cùng (7).

09:01 . 30/12/2023

Hàm DATE_SUB() trong MySQL được sử dụng để trừ một khoảng thời gian cụ thể từ một giá trị ngày/tháng cung cấp.

 

0988 542 856
0988 542 856