首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我希望使用Laravel根据条件返回特定数量的记录。

我希望使用Laravel根据条件返回特定数量的记录。
EN

Stack Overflow用户
提问于 2021-05-02 16:19:56
回答 1查看 22关注 0票数 0

我正在使用Laravel8.0开发一个google表单克隆

我的桌子结构如下:

1调查

  1. ID
  2. survey_name
  3. survey_description
  4. survey_type
  5. start_date
  6. end_date

2.项目

  1. id
  2. project_name
  3. project_description
  4. company_id

3.公司

  1. id
  2. company_name
  3. company_address

我编写了如下代码来返回项目:

代码语言:javascript
复制
$projects = \DB::table('projects')
                ->join('companies', 'projects.company_id', '=', 'companies.id')
                ->select('projects.*', 'companies.company_name as company_name',
                    \DB::raw('(SELECT COUNT(*) FROM surveys WHERE DATE(surveys.end_date) < "'.date('Y-m-d').'" AND surveys.project_id = projects.id) as completed_surveys'),
                    \DB::raw('(SELECT COUNT(*) FROM surveys WHERE surveys.project_id = projects.id) as total_surveys') 
                )
                ->paginate(6);

现在我只想返回那些total_surveys = completed_surveys.的项目

请引导我。

提前鸣谢。

EN

回答 1

Stack Overflow用户

发布于 2021-05-02 16:33:13

完成了..。

下面的是我的代码.

代码语言:javascript
复制
 $projects = \DB::table('projects')->where(
                \DB::raw('(SELECT COUNT(*) FROM surveys WHERE DATE(surveys.end_date) < "'.date('Y-m-d').'" AND surveys.project_id = projects.id)'),
                \DB::raw('(SELECT COUNT(*) FROM surveys WHERE surveys.project_id = projects.id)')
            )
                ->join('companies', 'projects.company_id', '=', 'companies.id')
                ->select('projects.*', 'companies.company_name as company_name',
                    \DB::raw('(SELECT COUNT(*) FROM surveys WHERE DATE(surveys.end_date) < "'.date('Y-m-d').'" AND surveys.project_id = projects.id) as completed'),
                    \DB::raw('(SELECT COUNT(*) FROM surveys WHERE surveys.project_id = projects.id) as total_surveys') 
                )
                ->paginate(6);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67358638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档