我有一個 sql 可以像這樣呼叫我的表:
$media = MediaOrder::join('users','users.nik','=','media_order.created_by')
->select('media_order.*','users.nickname AS nama1')
->where('media_order.group_id','=', auth()->user()->group_id)
->get();
然后我使用這個別名來替換表中的nik列created_by,media_order將其替換為nickname表中users如下所示:
->editColumn('created_by', function ($row) {
return $row->nama1;
})
它作業正常,結果如下:

但后來我的表中有另一列呼叫traffic_viewed_bywhich 也使用nik表中的列media_order,如下所示:

它仍然nik用于表格,我不知道如何對其進行別名以使其nickname從表格中users顯示,然后將其顯示在我的表格中,我不知道該怎么做,有人有解決方案或替代方法嗎? ,任何幫助真的很感激,謝謝!
uj5u.com熱心網友回復:
要為另一列獲取另一個用戶,您還需要加入另一個用戶。由于您加入了users兩次,他們每個都需要一個唯一的名稱,以便 SQL 可以理解您正在嘗試做什么。
$media = MediaOrder::join('users as created_by_user','created_by_user.nik','=','media_order.created_by')
->join('users as viewed_by_user','viewed_by_user.nik','=','media_order.traffic_viewed_by')
->select('media_order.*','created_by_user.nickname AS nama1', 'viewed_by_user.nickname AS nama2')
->where('media_order.group_id','=', auth()->user()->group_id)
->get();
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/384619.html
標籤:sql-server 拉拉维尔
上一篇:不應靜態呼叫非靜態方法Illuminate\Database\Connection::table()
下一篇:如何在Laravel中使用純html表單<formaction=""method="">而不是{!!表單::打開(['action
