Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 如何在sum id较少的情况下获取数据_Laravel_Fetch_Where - Fatal编程技术网

Laravel 如何在sum id较少的情况下获取数据

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'

寻找一些帮助如何从数据库中获取数据,其中,相同的问题ID总和小于2?我正在获取用户id不相同的数据,但我还需要获取questionId不相同的数据。因为现在当我在我的表中有关于userId的答案时,我可以在下一次调查中得到相同的userId,而问题是不同的,这就是为什么我需要检查数据库中是否已经存在userId和questionId

有什么办法吗

我的控制器:

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();