와 GROUP_BY을 수정 I했습니다 후속 테이블 : 프로젝트액티브는 일부 집계
내가 이전 삼년에 2017 년부터 프로젝트를 찾을했습니다. 그런 다음 status
, elim
, industry
을 기준으로 필터링 된 프로젝트별로 그룹화합니다. 또한 각 연도를 기준으로 총 금액을 확인하려면 일부 집계가 필요합니다.
나는 다음을 수행하고 막혔다.
results = {}
parameters = ['status', 'industry', 'elim']
@projects = Project.where("created_at >= ? AND created_at <= ?", 3.year.ago, DateTime.new(2017).end_of_year)
parameters.each do |param|
results[param] = @projects.group_by{|p| [p.created_at.year]}
end
는 기본적으로, 결과처럼 원하는 :
results["status"] => [
"2017": ["Active": 1, "Successful": 1],
"2016": ["Inactive": 1],
"2015": ["Active": 1]
]
results["elim"] => [
"2017": ["Death": 2],
"2016": ["Flood": 1],
"2015": ["Flood": 1]
]
results["amount"] => [
"2017": 32000.0,
"2016": 19000.0,
"2015": 2000.0,
]
내가 어떻게 달성 할 수 있습니까? 어떤 단서?
'[ "2017": [ "죽음": 2], "2016": [ "홍수": 1], "2015": [ "홍수": 1]]' – Salil
왜 그럴까요? 위의 테이블 이미지를주의 깊게 살펴보면 괜찮은 것입니다. – Emu
레일 위의 어레이/루비 콘솔을 붙이면 알게 될 것입니다. – Salil