在 N1Ql couchbase 查询中将相似的键值分组到数组

Grouping similar key values to an array in N1Ql couchbase query

[
    {
        "brand": "Apple",
        "product": "iPhone 12"
    },
    {
        "brand": "Apple",
        "product": "iPhone 11"
    },
    {
        "brand": "Samsung",
        "product": "Note 10"
    },
    {
        "brand": "Samsung",
        "product": "Note20"
    }
]

我的存储桶中有一个类似上面的数据集。

我如何查询(如下所示)将同一品牌的产品与计数分组?

[
    {
        "brand": "Apple",
        "products": [{
            "product": "iPhone 12"
        }, {
            "product": "iPhone 11"
        }],
        "count_of_products": 2
    },
    {
        "brand": "Samsung",
        "products": [{
            "product": "Note10"
        }, {
            "product": "Note20"
        }],
        "count_of_products": 2
    }
]

使用GROUP BY and ARRAY_AGG

SELECT brand, ARRAY_AGG({product}) AS products, COUNT(1) AS count_of_products
FROM mybucket
WHERE .....
GROUP BY brand;