2016-04-11 63 views
1

我正在使用laravel 5.1並且有兩張桌子。如何計算laravel 5中僱員數據的員工的總工資?

  1. 員工
  2. 工資

結構:

 

employees 

id|name|city
1 |doe |TX
2 |John|Phx

wages id|employee_id|wages
1 |1                 |200
2 |1                 |100
3 |1                 |300
4 |2                 |500
5 |1                 |200
6 |2                 |800
7 |1                 |200
8 |2                 |600
9 |1                 |200

所以按我的問​​題,我想取員工包括工資全部從業人員的總和的清單,要列出對我的刀片以表格的形式像emp name |城市|總工資等使用laravels從員工模式的雄辯。

我試過訪問者& laravel的變種,但他們沒有工作? 如果你想我也可以分享我的代碼。

在此先感謝。

回答

0

試試這個:

$employees = DB::table('wages')   
      ->join('employees', 'employees.id', '=', 'wages.employee_id') 
      ->select('employee.name as name', 'employee.city as city', DB::raw('SUM(wages.wages) as total_wages')) 
      ->groupBy('employee_id') 
      ->get(); 

,並在您的視圖:

<table> 
    <thead> 
     <tr> 
     <th>Name</th> 
     <th>City</th> 
     <th>Wage</th> 
     </tr> 
    </thead> 
    <tbody> 
     @foreach ($employees as $employee) 
     <tr> 
      <td>{{ $employee->name }}</td> 
      <td>{{ $employee->city }}</td> 
      <td>{{ $employee->total_wages }}</td> 
     </tr> 
     @endforeach 
    </tbody> 
</table> 

檢查,如果它可以幫助你......

+0

這可以幫助,但我也必須顯示員工的觀點也視圖。因此需要從員工模型中進行查詢。有些事情是這樣的:Employee :: all(); –

+0

我認爲這會起作用。但是,當我得到我想我錯過了我的問題的一部分,所以我再次編輯。 –

+0

基本上,你想要顯示一張包含員工姓名,城市名稱和工資總額的表格嗎?這是你想要的嗎? – Laerte

0

這裏是SQL查詢來獲取的總和每個僱員有多個記錄

​​

where test = database name;工資&員工是表名

如果您需要聘請城市,您可以添加聘用表並在查詢中聘用employ_name之前或之後添加b.employ_city,並用','分隔它們。我認爲這個查詢有助於提供關於從表中提取信息的知識。你可以轉換成laravel格式。因爲我還沒有laravel的知識

+0

這是sql。我想按照laravel標準來做到這一點 –

+0

你可以試試這個$ employ_detail = DB :: table('salary') - > leftJoin('employees','wages.employ_id','=','employees。 ('salary.mp') - > groupBy('wages.employ_id') - > select('wages.id','employees.name','employees.city',DB :: raw('SUM(salary.wages)as total_wages ')) - > get(); –