[翻译]  Can I do Model->where('id', ARRAY) multiple where conditions?

[CHINESE]  我可以做模型 - > where('id',ARRAY)多条件的条件吗?


The title says it all.

标题说明了一切。

I get that I can do this :

我知道我能做到这一点:

DB:table('items')->where('something', 'value')->get()

But what I want to check the where condition for multiple values like so:

但我想检查多个值的where条件,如下所示:

DB:table('items')->where('something', 'array_of_value')->get()

Is there an easy way of doing this?

有这么简单的方法吗?

3 个解决方案

#1


50  

There's whereIn():

有whereIn():

$items = DB::table('items')->whereIn('id', [1, 2, 3])->get();

#2


3  

If you need by several params:

如果您需要几个参数:

$ids = [1,2,3,4];
$not_ids = [5,6,7,8];
DB:table('table')->whereIn('id', $ids)->whereNotIn('id', $not_ids)->where('status', 1)->get();

#3


0  

You need to use multiple where calls

您需要在多个呼叫中使用多个

DB:table('table')->where('column', 'operator', 'value')
    ->where('column', 'operator', 'value')
    ->where('column', 'operator', 'value')
    ->get();

This will use AND operator. if you need OR you can use orWhere method.

这将使用AND运算符。如果你需要OR你可以使用orWhere方法。

For advanced where statements

对于高级where语句

DB::table('table')
    ->where('column', 'operator', 'value')
    ->orWhere(function($query)
    {
        $query->where('column', 'operator', 'value')
            ->where('column', 'operator', 'value');
    })
    ->get();

and if you nedd to use WHERE column IN you can use

如果您需要使用WHERE列IN,则可以使用

DB:table('table')->where('something', 'operator', 'value')
   ->whereIn('column', [value, value, value])
   ->get()

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2018 ITdaan.com 粤ICP备14056181号