In this post, I will tell you how to search comma separated value in Laravel Query Builder using MySQL find_in_set() method.
Using find_in_set() method, you can find the position of a string within a comma separated value.
FIND_IN_SET(needle,haystack);
Ok, Let's have a table which stores the article with the tags and you need to find out value from comma separated tags.
articles table
Now if you need to find out the articles that tagged into "php", you can use the "FIND_IN_SET" method in following way :
SELECT
title
FROM
articles
WHERE
FIND_IN_SET('php', tags);
FIND_IN_SET method is predefine method of MySQL.
In Laravel, You will use whereRaw() method to write your own raw SQL queries.
So you can use "find_in_set" method with whereRaw() in Laravel.
- $data = \DB::table("articles")
- ->select("title")
- ->whereRaw("find_in_set('php',tags)")
- ->get();
Collection {#169 ▼
#items: array:1 [▼
0 => {#170 ▼
+"title": "PHP Basic"
}
]
}







.jpg)












































