У меня есть таблица, называемая продажами, подобная этой:
id customer_id product_id sales
1 4 190 100
2 4 190 150
3 4 191 200
4 5 192 300
5 6 200 400
Я хотел бы получить общее количество покупок каждого из продуктов покупателем. Для этого я выполняю простую группу:
Sales.all.group(:customer_id, product_id).sum(:sales)
. Это дает мне хеш с ключами, состоящими из массивов с комбинацией customer_id и product_id:
hash = {
[4, 190] => 250,
[4, 191] => 200,
[5, 192] => 300,
[6, 200] => 400
}
Хотя это дает мнеВ результате я теперь также рассчитываю получить общую сумму продаж для каждого покупателя. Я мог бы, конечно, написать еще один запрос, но это кажется излишним. Разве нет простого способа найти все ключи хеш-массива, начинающиеся с [4, *]
или чего-то еще?