首页 > 解决方案 > Rails 使用 join 提取和排序数据

问题描述

我想拉出来Process并按company_name. 要为一个流程获取 company_name,我需要执行以下操作:

  company_name = Process.first.inquiry_field_responses
                  .joins(:inquiry_field)
                  .where(inquiry_fields: { name: 'company_name' })

  company_name.first&.value

如何按公司名称提取和订购这些流程?

标签: sqlruby-on-railsrubyactiverecord

解决方案


您可以按如下方式升序排序,

  company_name = Process.first.inquiry_field_responses
                  .joins(:inquiry_field)
                  .where(inquiry_fields: { name: 'company_name' })
                  .order("inquiry_fields.name")

要排序降序,请使用order("inquiry_fields.name desc")


推荐阅读