目前我这样做是为了从我的表中获取数据
cameras = Camera.joins("left JOIN users on cameras.owner_id = users.id")
.joins("left JOIN vendor_models vm on cameras.model_id = vm.id")
.joins("left JOIN vendors v on vm.vendor_id = v.id")
.where(condition).order(sorting(col_for_order, order_for)).decorate
这会生成
这样的查询SELECT "cameras".* FROM "cameras" left JOIN users on cameras.owner_id = users.id left JOIN vendor_models vm on cameras.model_id = vm.id left JOIN vendors v on vm.vendor_id = v.id
我还有另一张表格camera_shares
,其中我与相机的表格有关系,因为camera_id
表格中也存在camera_shares
,每个camera_shares
有一个camera_id
告诉我们共享是针对哪个相机,我想计算camera_shares
的数量,例如,如果有一个ID为12
的相机并且有还有20 camera_shares
camera_id
= 12
然后我想计算它的总数。我想在Rails查询中这样做,如上所示?怎么可能呢?
答案 0 :(得分:-1)
似乎相当直截了当。假设您要查找@camera的camera_shares数:
CameraShare.where(camera: @camera).count