Sha*_*son 8 php mysql query-builder laravel eloquent
我用一个查询在mysql中运行:
select * from my_table where $val between col1 and coL2;
Run Code Online (Sandbox Code Playgroud)
它运行正常,但是使用laravel 4,进行查询的唯一方法就是使用类似的东西
my_model::where('col1','>=',$val)->where('col2','<=',$val)
Run Code Online (Sandbox Code Playgroud)
这种方式似乎不起作用,因为在使用通常的"select*..."时我没有相同的结果
任何的想法 ?
只是为了澄清我的要求:在我的情况下,我没有"...在value1和value2之间的列",但"在commun之间的值"所以在我看来,我不能使用"wherebetween"
The*_*pha 32
你可以尝试这样的事情
// Get records whose id between 3 and 6
$users = User::whereBetween('id', array(3, 6))->get();
Run Code Online (Sandbox Code Playgroud)
或者使用变量
$id = 'id';
$from = 1;
$to = 5;
$users = User::whereBetween($id, array($from, $to))->get();
Run Code Online (Sandbox Code Playgroud)
这将获得ID其间1和之间的所有记录5.
这应该做到......
$results = my_model::select('*')->whereRaw("$val between col1 and coL2")->get();
我觉得这很安全,但你可能需要先清理一下$val.