Laravel 如何在sum id较少的情况下获取数据
寻找一些帮助如何从数据库中获取数据,其中,相同的问题ID总和小于2?我正在获取用户id不相同的数据,但我还需要获取questionId不相同的数据。因为现在当我在我的表中有关于userId的答案时,我可以在下一次调查中得到相同的userId,而问题是不同的,这就是为什么我需要检查数据库中是否已经存在userId和questionId 有什么办法吗 我的控制器:Laravel 如何在sum id较少的情况下获取数据,laravel,fetch,where,Laravel,Fetch,Where,寻找一些帮助如何从数据库中获取数据,其中,相同的问题ID总和小于2?我正在获取用户id不相同的数据,但我还需要获取questionId不相同的数据。因为现在当我在我的表中有关于userId的答案时,我可以在下一次调查中得到相同的userId,而问题是不同的,这就是为什么我需要检查数据库中是否已经存在userId和questionId 有什么办法吗 我的控制器: public function viewSurvey($id) { $object = DB::table('question'
public function viewSurvey($id)
{
$object = DB::table('question')
->where('survey_id', '=', $id)
->where('name', '!=', NULL)
->get();
$teamName = DB::table('survey')->where('surveyId', '=', $id)
->join('team','survey.teamId','=','team.teamId')
->join('company','company.id','=','team.companyID')
->get();
$company = Auth::user()->company;
$date = Survey::where('surveyId', '=', $id)->get();
$teams = Auth::user()->teams;
$checkUserTeam = DB::table('teammembersall')
->where('UserId', '=', Auth::user()->id)
->get();
$members = Survey::where('surveyId', '=', $id)
->join('team', 'team.teamId', '=', 'survey.teamId')
->join('teammembersall', 'teammembersall.TeamId', '=', 'team.TeamId')
->join('users', 'users.id', '=', 'teammembersall.UserId')
->select('users.*')
->whereNotExists(function ($query) {
$query->select(DB::raw(1))
->from('answer')
->whereRaw('answer.answerAboutUserId = users.id')
->andWhere('answer.questionId', '<', 2);
})
->get();
$questions = DB::table('answer')->get();
return view('survey_details', ['object' => $object, 'date' => $date, 'teams' => $teams, 'members' => $members, 'questions' => $questions, 'checkUserTeam' => $checkUserTeam, 'teamName' => $teamName, 'company' => $company ]);
}
公共功能视图调查($id)
{
$object=DB::表('question')
->其中('survey_id','=',$id)
->其中('name','!=',NULL)
->get();
$teamName=DB::table('survey')->其中('surveyId','=',$id)
->加入('team'、'survey.teamId'、'='、'team.teamId')
->加入('company','company.id','=','team.companyID'))
->get();
$company=Auth::user()->company;
$date=Survey::where('surveyId','=',$id)->get();
$teams=Auth::user()->teams;
$checkUserTeam=DB::table('teammembersall')
->其中('UserId','=',Auth::user()->id)
->get();
$members=Survey::where('surveyId','=',$id)
->加入('team'、'team.teamId'、'='、'survey.teamId')
->加入('teammembersall'、'teammembersall.TeamId'、'='、'team.TeamId')
->join('users'、'users.id'、'='、'teammembersall.UserId')
->选择('users.*')
->whereNotExists(函数($query){
$query->select(DB::raw(1))
->从('答案')
->whereRaw('answer.answerAboutUserId=users.id')
->andWhere('answer.questionId','我找到了解决方案,在我的答案表中创建了一个新列:surveyId,在插入数据时,也插入了surveyId。
然后更改我的控制器方法以进行如下检查:
$members = Survey::where('surveyId', '=', $id)
->join('team', 'team.teamId', '=', 'survey.teamId')
->join('teammembersall', 'teammembersall.TeamId', '=', 'team.TeamId')
->join('users', 'users.id', '=', 'teammembersall.UserId')
->select('users.*')
->whereNotExists(function ($query) use ($id) {
$query->select(DB::raw(1))
->from('answer')
->whereRaw('answer.answerAboutUserId = users.id')
->where('answer.surveyId', '=', $id);
})
->get();
$members = Survey::where('surveyId', '=', $id)
->join('team', 'team.teamId', '=', 'survey.teamId')
->join('teammembersall', 'teammembersall.TeamId', '=', 'team.TeamId')
->join('users', 'users.id', '=', 'teammembersall.UserId')
->select('users.*')
->whereNotExists(function ($query) use ($id) {
$query->select(DB::raw(1))
->from('answer')
->whereRaw('answer.answerAboutUserId = users.id')
->where('answer.surveyId', '=', $id);
})
->get();