Rails - 如何在这些表之间建立连接?

时间:2013-09-16 11:57:14

标签: mysql sql ruby-on-rails ruby join

我有这些表格:

用户 - 包含系统中所有用户的列表

汽车 - 所有汽车列表,有一栏 user_id

car_views - 用于跟踪有多少人访问汽车的个人资料。有以下列:

- car_id
- ip

我正在尝试获取信息,有多少人在一段时间内看到了相应用户的汽车。但我的问题是,我不知道如何从相应的用户那里获取汽车的所有视图。

有一个解决方案可以将 car_views 表添加到 user_id 列中,但它是否会重复信息?

1 个答案:

答案 0 :(得分:1)

你应该可以做这样的事情

user.cars.joins(:car_views).group('car_views.car_id').select('count(car_views.id) as count, car.name')

我不确定这是否有效,但您可以尝试一下