我已尝试使用以下代码计算特定用户的出勤率,但计算结果正在针对表中的所有可用用户进行。我是laravel的新手,所以我需要帮助。
在控制器中:
$TController =DB::table('tbl_attendancetime')
->select('username','statusid','status_description','user_id')
->groupby('username')
->get();
$TController1 =DB::table('tbl_attendancetime')//->distinct()
->select('statusid')
->where('statusid','=', 0)//->groupBy('user_id')
->get();
$TController2 =DB::table('tbl_attendancetime')
->select('statusid')//->groupby('user_id')
->where('statusid','=', 1)//->distinct()->get(array('user_id'));
//->groupBy('user_id')
->get();
$TController3 =DB::table('tbl_attendancetime')
->select('status_description')//->groupby('user_id')
->where('status_description','=',3)
->groupBy('user_id')
->get();
$TController4 =DB::table('tbl_attendancetime')
->select(
'status_description')//->groupby('user_id')
->where('status_description','4')
->groupBy('user_id')
->get();
$TController5 =DB::table('tbl_attendancetime')
->select(
'status_description')//->groupby('user_id')
->where('status_description','5')
->groupBy('user_id')
->get();
foreach($TController as $row)
{
$a=count($TController1);
$p=count($TController2);
$e=count($TController3);
$s=count($TController4);
$su=count($TController5);
}
答案 0 :(得分:0)
在您的第一个查询中,您使用此行的条件
->where('tbl_attendancetime.user_id', 'create_register.user_id')
因此,您将获得tbl_attendancetime& create_register。
如果您需要特定的用户信息,请使用特定的ID。
例如
->where('tbl_attendancetime.user_id', 1)