我被困在嘗試將多個表連接在一起。我有一個用戶表,其中包含用戶的姓名,另外三個表分別用于患者、醫生和約會。預約表有患者和醫生的 ID。我只能連接兩個表,例如約會和患者,以顯示患者的資料,如下所示。
$data = User::join('appointments','users.id','=','appointments.user_id')
我想知道如何同時為病人和醫生做這件事。DB 中的用戶表有姓名、姓氏、電話號碼和角色 ID(1 代表醫生,3 代表患者)。約會表有 user_id、doctor_id、日期和時間。我想得到用戶名和醫生的名字。
uj5u.com熱心網友回復:
試試這個代碼示例:
$user = DB::table('user')
->leftJoin('posts', 'users.id', '=', 'posts.user_id')
->join('orders', 'users.id', '=', 'orders.user_id')
->where('posts.title', 'Example')
->get();
Laravel 查詢生成器
uj5u.com熱心網友回復:
試試這個:
return $user = User::leftJoin('posts', 'posts.user_id', '=', 'users.id')
->leftJoin('orders','orders.user_id', '=', 'users.id')
->leftJoin('appointments','appointments.user_id', '=', 'users.id')
->get();
Laravel 查詢生成器
uj5u.com熱心網友回復:
您可以執行上述任何一種方式。您還可以在模型之間建立關系。然后,當您呼叫 User 模型時,只需使用
->with('orders')->with('appointments')->get();
通過雄辯的魔法,該用戶的所有訂單和所有約會都將添加到您收藏的關系中。在 Laravel 檔案中查找一對多關系。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/474931.html
