首頁 > 後端開發 > php教程 > 如何使用 Eloquent 的 `with()` 函數從相關表中選擇特定欄位?

如何使用 Eloquent 的 `with()` 函數從相關表中選擇特定欄位?

Barbara Streisand
發布: 2024-12-26 07:28:31
原創
186 人瀏覽過

How to Select Specific Columns from Related Tables Using Eloquent's `with()` Function?

使用Eloquent 的「With()」函數從相關表中擷取特定欄位

使用Eloquent 的「with()」函數執行聯接時,可以從相關表中檢索特定列。這在僅需要連接表中的一部分列的情況下非常有用。

問題:

考慮具有兩個表(User 和 Post)的場景,其中一個用戶可以擁有多個帖子,每個帖子屬於一個用戶。

初始方法:

使用預設的「with('user')」語法,執行下列查詢:

select * from `posts`
select * from `users` where `users`.`id` in (<1>, <2>)
登入後複製

但是,如果“”中只需要特定列users”表,例如“id”和“username”,上面的方法是不夠的。

解I:使用陣列作為「with()」中的第二個參數:

將陣列作為「with()」中的第二個參數傳遞允許您指定從相關表中檢索哪些欄位。 II:使用閉包作為「with()」中的第二個參數:

To從第二個表中檢索特定列,使用閉包函數作為「with()」數組中的第二個參數。注意:主要相關表的鍵(本例為「id」)必須是 $query->select() 中的第一個參數才能檢索所需的結果。

以上是如何使用 Eloquent 的 `with()` 函數從相關表中選擇特定欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板