我正在尝试将聚合表与其代表的对象类型连接起来。
这是聚合表的简化模式:
聚合表
aggregate_table[0] => {
item_type: 'cars',
item_id: 8,
count: 12,
time: 'Thu, 01 Nov 2012 00:00:00 PDT -07:00'
}
aggregate_table[1] => {
item_type: 'people',
item_id: 23,
count: 48
time: 'Thu, 01 Nov 2012 00:00:00 PDT -07:00'
}
是否可以返回与从 AggregateTable 获取的各自计数合并的Car对象?
这是一个更具描述性的现实生活用例:
查询聚合表 where
item_type: people
,具有特定的给定数据范围和按计数排序的结果。在People模型中查询聚合表查询返回的item_ids 。
将People对象与相应的聚合表结果合并,例如:
People#count
我尝试使用左外连接来实现这一点是徒劳的。这样做的正确方法是什么?
运行 PostgreSQL 9.1 和 Rails 3.2.8