簡體   English   中英

通過Rails中的關聯記錄對記錄進行分組和計數

[英]Grouping and counting records by their associated record in rails

class JobPosition < AR
  belongs_to :recruiter, class_name: 'User'
end

class User < AR
  # first_name, last_name
end

招聘人員(或更確切地說,用戶)可以附加到許多職位上。 我想計算每個招聘人員分配給多少個申請。 這很容易通過

JobPosition.group(:recruiter_id).count

返回每個招聘者ID的計數。

{
  1 => 3,
  2 => 5
}

但是我不想要招聘人員的身份證,而是招聘人員的全名是這樣的

{
  "Peter Henry" => 3,
  "Hugh Kavener" => 5
}

我在用戶表上沒有full_name列,但是有first_name和last_name。

如何使用PG和ActiveRecord實現此目的。 我不希望訴諸於操作內存中的活動記錄對象。

您可以通過編寫一些額外的SQL來做到這一點,我相信以下語法應適用於postgresql:

JobPosition.joins(:recruiters).group("user.first_name || ' ' || user.last_name").count

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM