dwiky aliansyah
dwiky aliansyah

Reputation: 35

Left Join query in laravel

how to query like

SELECT count(DISTINCT a.client_invoice_id) from client_invoice a LEFT JOIN document b on(a.client_invoice_id = b.relation_id_invoice) WHERE a.client_invoice_id IS NOT null and b.type_document = 'client_invoice'

in laravel version?

Upvotes: 0

Views: 1220

Answers (2)

EddyTheDove
EddyTheDove

Reputation: 13259

$result = DB::table('client_invoice as a')
->leftjoin('document as b', 'a.client_invoice_id', '=', 'b.relation_id_invoice')
->whereNotNull('a.client_invoice_id')
->where('b.type_document', '=', 'client_invoice')
->distinct()
->count();

Upvotes: 2

Mayank Pandeyz
Mayank Pandeyz

Reputation: 26258

Laravel left join:

$users = DB::table('users')
            ->leftJoin('posts', 'users.id', '=', 'posts.user_id')
            ->get();

Or you can use Raw Expression also like:

$users = DB::table('users')
                     ->select(DB::raw('count(*) as user_count, status'))
                     ->where('status', '<>', 1)
                     ->groupBy('status')
                     ->get();

Laravel Left Join

Laravel Raw Expression

Upvotes: 1

Related Questions