问题描述
我有一个问题。当我尝试执行此查询时,查询给我此错误“无效的运算符'$ addToSet'” 。
$qb = $this->createAggregationBuilder();
$qb
->match()
->field('categories')->in($categories)
->field('hidden')->field('hidden')->notEqual(true)
->unwind('$type')
->unwind('$variants')
->unwind('$variants.subvariants')
->unwind('$variants.subvariants.params')
->group()
->field('id')->expression('$type')
->field('param')->addToSet(
$qb
->expr()
->field('id')->expression('$variants.subvariants.params.param')
->field('values')->addToSet('$variants.subvariants.params.value')
);
$res_params = $qb->execute()->toArray();
有人知道如何正确执行此查询吗?
我需要这样的结果
[
{
"_id": {
"$ref": "Type","$id": "f564ece4fe4b4cdd9f1ccd8f092a98f9","$db": "skibike"
},"param": [
{
"_id": {
"$ref": "Param","$id": "10f67225cfbe4c0e962828f32ea0fc25","$db": "skibike"
},'values': [1,2,3]
},{
"_id": {
"$ref": "Param","$id": "5ee15b7cc9404ceab9eb41f48e8622f5",'values': [5,4]
}
]
}
]
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)