我有三张table: tbl_borrower, tbl_client 和 tbl_guarantor ```tbl_Client:id|name|address|email|
tbl_borrower, tbl_client
tbl_guarantor
tbl_Guarantor:id|clientid(fk)|Guaranteed_date|borrower_id(fk from borrower table)
我想检索client表的所有值,除了在的控制器中的担保人表中存在的值 `Laravel 5.5` .
332nm8kg1#
试试这个:
DB::table('tbl_Client') ->groupBy('tbl_Client.id') ->leftjoin('tbl_Guarantor', 'tbl_Client.id', '=', 'tbl_Guarantor.clientid') ->get([ 'tbl_Client.*' ]);
bvn4nwqk2#
一旦你建立了模型和关系,你就应该:
Client::doesntHave('guarantor')->get()
https://laravel.com/docs/5.6/eloquent-relationships#querying-关系缺失
rfbsl7qr3#
如果您使用的是查询生成器,它将是:
$clients = DB::table('tbl_clients') ->join('tbl_guarantor', 'tbl_clients.id', '=', 'tbl_guarantor.clientid') ->select('tbl_clients.*') ->whereNull('tbl_guarantor.clientid') ->get();
https://laravel.com/docs/5.5/queries前提是使用左连接并基于此答案在第二个表id上测试null。https://stackoverflow.com/a/4076157/3585500
3条答案
按热度按时间332nm8kg1#
试试这个:
bvn4nwqk2#
一旦你建立了模型和关系,你就应该:
https://laravel.com/docs/5.6/eloquent-relationships#querying-关系缺失
rfbsl7qr3#
如果您使用的是查询生成器,它将是:
https://laravel.com/docs/5.5/queries
前提是使用左连接并基于此答案在第二个表id上测试null。https://stackoverflow.com/a/4076157/3585500