gpt4 book ai didi

sql - 双连接查询 rails

转载 作者:行者123 更新时间:2023-12-02 11:07:02 25 4
gpt4 key购买 nike

我有三个模型:JobPosting、Job 和 Organization。关系如下:

  1. 一个组织有很多职位。
  2. 一个职位属于一个组织,并且有多个职位发布。
  3. JobPosting 属于一个 Job。

作业有一个名为 job_type 的属性,我可以使用以下查询找到与具有特定 job_type 的作业相关的所有 JobPosting:

JobPosting.joins(:job).where(jobs: { :job_type => 'volunteer' })

但我正在努力做同样的事情,但具有组织属性。组织有一个名为department的属性,我如何通过具有特定部门的作业查询与组织相关的JobPosting。我遇到麻烦的原因是因为组织本质上是两级,而工作只有一层。

任何帮助将不胜感激。

最佳答案

您可以按如下方式连接这两个关系:

JobPosting.
joins(job: :organization).
where(jobs: { job_type: 'volunteer' }, organizations: { organizations_attr1: 'value_to_test' })

joins(job: :organization) 确保 job_postingsjobsorganizations 表之间存在内部联接正确。如果您想探索 Rails 如何执行联接,请尝试在 rails 控制台 中使用 .to_sql 执行此命令,以检查生成的查询。

关于sql - 双连接查询 rails ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43081027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com