2
我知道的PostgreSQL,不像的MySQL,需要使用聚集函數,例如,當以列出所有選定字段的group by
子句中預先加載和組由PostgreSQL中
Transaction.select('sum(amount), category_id').group('category_id')
不夠公平。但是當我嘗試加載一個關聯時,例如
Transaction.select('sum(amount), categories.name').includes(:category).group('categories.name')
這是行不通的,因爲你並沒有包括所有 group by子句中的兩個模型的領域。
有沒有一種方法,以避免列出模型的各個領域,或者我應該考慮接受N + 1查詢? (我不認爲上市的30場是有道理的,當我只需要2 ...)
每個DBMS需要列出所有領域GROUP BY,MySQL是例外英寸由於這種行爲,它對許多錯誤負責。 –