0
我有Client,User和Action模型。 客戶端通過has_and_belongs_to_many關聯屬於用戶。操作屬於客戶。我需要找回屬於特定用戶(ID = 1)客戶端和計數與特定類型的客戶端操作相關聯(ACTION_TYPE = 1)
我有以下SQL查詢,它確實工作得很好ActiveRecord命令序列來統計來自不同表格的關聯記錄
SELECT clients.*, count(CASE WHEN actions.action_type = 1 THEN 1 END) AS client_actions FROM clients, actions, clients_users WHERE clients.id=actions.client_id AND clients.id=clients_users.client_id AND clients_users.user_id=1 GROUP BY clients.id
這有效地查詢數據庫的客戶數據,並計數關聯的對象。不過,我正在努力理解如何將其包裝到ActiveRecord命令序列中,所以我可以使用Paginate來獲得結果。 (目前我使用運行在的find_by_sql查詢)