代碼
$result = DB::table('drama_rescue_data')
->join('users', 'drama_rescue_data.username', '=', 'users.email')
->get()。
問題
我有這個非常簡單的連接,正如上面的代碼中提到的。然而,當我在視圖或dd的$result上渲染資料時,我得到了相同的行重復,我無法弄清原因。(這些行包含相同的資料。)
(我使用的是Laravel 5.4)
。誰能幫我弄清楚原因?
uj5u.com熱心網友回復:
為了防止重復,你應該使用distinct()方法,這個方法只從結果中回傳唯一的專案。
為了做到這一點,首先你必須嚴格地選擇你想要的東西:
$result = DB::table('datail_rescue_data')
->選擇('disaster_rescue_data.*')
->join('users', 'storm_rescue_data.username', '=', 'users.email')
->distinct()->get()。
uj5u.com熱心網友回復:
你可以嘗試在查詢中使用distinct。Distinct可以洗掉結果集中的重復內容。
例如
$result = DB::table('datail_rescue_data')
->區別()
->join('users', 'storm_rescue_data.username', '=', 'users.email')
->get()。
參見https://laravel.com/docs/5.4/queries
編輯。 好的,我想你現在可以使用groupBy來獲得唯一的結果。雖然不清楚你的資料結構是什么,所以這是一個猜測,使用 "users.email"。也許可以用 "drama_rescue_data.username "來分組。實驗一下就知道了。
$result = DB::table('disaster_rescue_data')
->區別()
->join('users', 'storm_rescue_data.username', '=', 'users.email')
->groupBy('users.email')
->get()。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/320592.html
標籤:
上一篇:在Magento2管理側邊欄的銷售選單標簽上添加自定義選單項,并提供示例頁面
下一篇:在php中通過空白處讀取字串
