Я новичок в Laravel 4.
У меня есть этот запрос:
SELECT a.id, active, name, email, img_location, IFNULL(b.Total, 0) AS LeadTotal, IFNULL(c.Total, 0) AS InventoryTotal
FROM users AS a
LEFT JOIN (
SELECT user_id, count(*) as Total
FROM lead_user
GROUP BY user_id
) AS b ON a.id = b.user_id
LEFT JOIN (
SELECT user_id, count(*) as Total
FROM user_inventory
GROUP BY user_id
) AS c ON a.id = c.user_id
WHERE a.is_deleted = 0
Как я могу преобразовать его в построитель запросов Laravel? Я не понимаю, как использовать построитель запросов на соединение Laravel с этим типом запроса.
Ответить!!
Будет вся помощь petkostas на форуме laravel. Мы получили ответ.
$users = DB::table('users AS a')
->select(array('a.*', DB::raw('IFNULL(b.Total, 0) AS LeadTotal'), DB::raw('IFNULL(c.Total, 0) AS InventoryTotal') ) )
->leftJoin(DB::raw('(SELECT user_id, COUNT(*) as Total FROM lead_user GROUP BY user_id) AS b'), function( $query ){
$query->on( 'a.id', '=', 'b.user_id' );
})
->leftJoin(DB::raw('(SELECT user_id, COUNT(*) as Total FROM user_inventory WHERE is_deleted = 0 GROUP BY user_id) AS c'), function( $query ){
$query->on( 'a.id', '=', 'c.user_id' );
})
->where('a.is_deleted', '=', 0)
->get();