은 여기 내가 부탁 해요 무엇을 명확히하는 데 도움 아래에있는 내 질문에 대한 샘플 컨텍스트의 조금 ...조인을 사용하는 ARel 쿼리에서 동적 집계 열을 구성 할 수 있습니까?
스키마
Users
- id
- name
Answers
- id
- user_id
- topic_id
- was_correct
Topics
- id
- name
데이터
Users
id | name
1 | Gabe
2 | John
Topics
id | name
1 | Math
2 | English
Answers
id | user_id | topic_id | was_correct
1 | 1 | 1 | 0
2 | 1 | 1 | 1
3 | 1 | 2 | 1
4 | 2 | 1 | 0
5 | 2 | 2 | 0
무엇 나는 결과 세트에서 사용자 당 하나의 열과 주제 당 두 개의 열, 주제에 대한 정답의 합계를 보여주는 표, 그 주제에 대한 부정확 한 답의 합계를 나타내는 것. 위의 샘플 데이터의 경우,이 결과 집합과 같습니다
users.id | users.name | topic_1_correct_sum | topic_1_incorrect_sum | topic_2_correct_sum | topic_2_incorrect_sum
1 | Gabe | 1 | 1 | 1 | 0
2 | John | 0 | 1 | 0 | 1
물론, 주제 테이블에 더 많은 토픽이 있다면
내 원하는 결과, 나는 새를 포함하려면이 쿼리를하고 싶습니다 correct_sum 및 incorrect_sums 존재하는 각 항목에 대해, 그래서 하드 코드 topic_ids 내 선택 절의 합계 기능을 사용하지 않고이 쓸 수있는 방법을 찾고 있어요.
ARel을 사용하면 이런 종류의 마법을 현혹시킬 수 있습니까?
답변을 주셔서 감사합니다. Steven. 필자의 경우, PostgreSQL을 사용하고 있으며, SQL로 작성해야하는 쿼리가 있는데, ARel이 도움이된다면, 내가 좋아하지 않고 보길 원했던 icky sql 일뿐입니다. Rails 3에서이 작업을 수행하십시오. –