我必須運行復雜聚合,其中一個步驟是計算sold_qty字段的總和,然後我需要將此總和與非聚合字段all_qty相減。我的數據如下:計算字段和聚合字段之間的差異
{item_id: XXX, sold_qty: 1, all_qty: 20, price: 100 }
{item_id: XXX, sold_qty: 3, all_qty: 20, price: 100 }
{item_id: YYY, sold_qty: 1, all_qty: 20, price: 80 }
這些是來自要約的交易。 all_qty和price字段是多餘的 - 表示來自其他結構的單個值 - 報價並且僅在單個報價(由item_id標識)的所有交易中重複。
在SQL中的條款我需要的是:
SELECT (all_qty - sum(sold_qty)) * price GROUP BY item_id
我所做的是聚集
'{
"query": {"term": {"seller": 9059247}},
"size": 0,
"aggs": {
"group_by_offer": {
"terms": { "field": "item_id", size: 0},
"aggs": { "sold_sum": {"sum": {"field": "sold_qty"}}}
}
}
}'
但我不知道下一步該怎麼做,以實現我的目標。
你有哪個版本的ES的? – Val