Laravel query builder where and or where

JSN picture JSN · Jul 27, 2017 · Viewed 8.8k times · Source

I want to build a query something like this:

select * from users where id=1 AND address="USA" AND (status="active" OR status="pending")

how can i do that with laravel query builder?

please help. Thanks!

Answer

blues911 picture blues911 · Jul 27, 2017

Try to find complex query examples with Laravel Query Builder. And maybe this can help a little:

DB::table('users')
    ->where('id', 1)
    ->where('address', 'USA')
    ->where(function($query) {
        $query->where('status', 'active')
            ->orWhere('status', 'pending');
    })->get();

or:

DB::table('users')
    ->where([
        ['id', 1],
        ['address', 'USA'],
    ])
    ->where(function($query) {
        $query->where('status', 'active')
            ->orWhere('status', 'pending');
    })->get();