Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Yii2 MongoDb查找comapre字段_Php_Mongodb_Yii2 - Fatal编程技术网

Php Yii2 MongoDb查找comapre字段

Php Yii2 MongoDb查找comapre字段,php,mongodb,yii2,Php,Mongodb,Yii2,这可能是一个愚蠢的问题,但我被卡住了,我想找到uuid和main_uuid不相等的记录 我可以在控制台中使用下面的查询在mongo中查找记录 Mongo系列 { "_id" : ObjectId("5ff2c31e731333aa7e3affca"), "main_uuid" : "c0f5ac89-8dc7-4b54-9cce-bafd523a30e5"

这可能是一个愚蠢的问题,但我被卡住了,我想找到uuid和main_uuid不相等的记录 我可以在控制台中使用下面的查询在mongo中查找记录 Mongo系列

       {
            "_id" : ObjectId("5ff2c31e731333aa7e3affca"),
            "main_uuid" : "c0f5ac89-8dc7-4b54-9cce-bafd523a30e5",
            "uuid" : "c0f5ac89-8dc7-4b54-9cce-bafd523a30e5"
         }
    =================================================
    mongoQuery working in console=>
db.ntc.cdr.find ( { $where : "this.uuid != this.main_uuid" } )
我也试过,但没有成功

   class Cdr extends ActiveRecord
    {
        /**
         * {@inheritdoc}
         */
        public static function collectionName()
        {
            return [MONGO_DB, 'ntc.cdr'];
        }
        
    
    }
    
    class CdrSearch extends Cdr{
        $query = Cdr::find();

         $dataProvider = new ActiveDataProvider([
            'query' => $query
        ]);
    }

对于ActiveRecord,如果您希望比较为相等,则应

 Cdr::find()->where(['=', 'main_uuid' , 'uuid'])->all();
或者干脆

Cdr::find()->where('main_uuid = uuid')->all();

如果希望不相等,请使用
=
而不是
=

您链接的帖子与数据库级别的解释有关,而不是与活动记录实现有关。您使用哪个适配器/包从Yii2访问mongodb?我使用的是我想要的结果,正如链接中所示,我的错误。您是否在最后设置了
all()
?这个查询-
Cdr::find()->where(“this.uuid!=this.main\u uuid”)->all()
返回什么?我猜
=
应该是
=这里。@ArSeN谢谢。。两个操作员的答案都更新了。更新的问题请看上面的问题都不起作用,我已经试过了。你有错误吗。。给我看错误信息我没有收到任何错误,但也没有得到适当的结果,过滤器没有应用,我的意思是,如果你能得到一些提示,请附上有问题的图片。