如何在laravel中使用逗号分隔值在列上使用“where”

时间:2015-11-03 07:28:19

标签: php mysql regex laravel

我正在使用带有laravel框架的php。我想从包含用户ID的表中获取行。这里的问题是用户id是整数值而column(author)包含多个以逗号分隔的整数值。这是一个例子。

DB::table('stories')->where('author','4')->get();

作者列具有值:第1行:2,4,5 |第2行:1,3,14 |第3行:4,5 我会得到第1行和第3行。所以,请帮我排好。

2 个答案:

答案 0 :(得分:9)

您可以像{/ p>一样使用whereRaw

DB::table('stories')->whereRaw("find_in_set('4',author)")->get();

答案 1 :(得分:0)

首先使用

string转换为array
$row = "2,4,5";
$idsArr = explode(',',$row);  
DB::table('stories')->whereIn('author',$idsArr)->get();