Can MySQL FIND_IN_SET be Made to Exploit Indices?
In this question, we examine the behavior of MySQL's FIND_IN_SET function in comparison to the IN operator, which utilizes indices for faster data retrieval.
Understanding the Issue
As illustrated in the provided Explain results, FIND_IN_SET does not leverage the primary key index, leading to suboptimal performance. The goal is to find a way to achieve similar performance to the IN operator, which effectively utilizes indices.
Solution
While FIND_IN_SET cannot be directly optimized to use indices, a workaround exists by utilizing prepared statements.
Implementation
This approach achieves the desired behavior by using indices, similar to the IN operator, while allowing the query to be parameterized with a comma-separated string.
Additional Considerations
The above is the detailed content of Can MySQL's FIND_IN_SET Function Leverage Indices?. For more information, please follow other related articles on the PHP Chinese website!