No PostgreSQL, como você soma subelementos de um campo JSON?
Dado:Customer <--- Order
onde Order
tem um campo JSON quantities_per_product
que contém a quantidade e a quantidade enviada para cada produto do Order
.
Gostaria de obter um resumo Customer
das quantidades de cada produto para todos os pedidos do cliente.
Exemplo:
Customer 1
> Order 1
quantities_per_product
{
"product_A": {"qty": 10, "shipped": 5}
"product_B": {"qty": 20, "shipped": 2}
}
> Order 2
quantities_per_product
{
"product_A": {"qty": 15, "shipped": 8}
"product_C": {"qty": 7, "shipped": 1}
}
Resultado esperado para o Cliente 1:
quantities_per_product_summary
{
"product_A": {"qty": 25, "shipped": 13}
"product_B": {"qty": 20, "shipped": 2}
"product_C": {"qty": 7, "shipped": 1}
}