Reputation: 356
I am using php with laravel framework. I want to get rows from table that contains user id. Problem here is that user id is integer value and column(author) contain more than one comma separated integer values. Here is example.
DB::table('stories')->where('author','4')->get();
author column have values : row 1: 2,4,5 | row 2: 1,3,14 | row 3 : 4,5 and I will get row 1 and 3. So, Please help me to get right rows.
Upvotes: 12
Views: 22192
Reputation: 629
First convert your string
to array
using
$row = "2,4,5";
$idsArr = explode(',',$row);
DB::table('stories')->whereIn('author',$idsArr)->get();
Upvotes: 3
Reputation: 21422
You can use whereRaw
like as
DB::table('stories')->whereRaw("find_in_set('4',author)")->get();
Upvotes: 28