MongoDB怎么删除两个字段不一致的记录?

我使用MongoDB PHP Library来操作Mongodb数据库。

文档: https://docs.mongodb.com/php-...

我想删除集合中两个字段不一致的记录,比如下面有一个集合:

        $collection = [
            ['_id' => 'xxx', 'name_from_card' => 'foo', 'name_from_passport' => 'fooo'],
            ['_id' => 'xxx', 'name_from_card' => 'bar', 'name_from_passport' => 'bar'],
            ['_id' => 'xxx', 'name_from_card' => 'baz', 'name_from_passport' => 'bazz'],
            ['_id' => 'xxx', 'name_from_card' => 'qux', 'name_from_passport' => 'qux']
        ];

如果name_from_cardname_from_passport两个字段的值不一致,那么这条记录就删除。应该怎么做呢?

阅读 3.1k
1 个回答

你都说了,你已经使用库了。那么看看文档吧。
https://docs.mongodb.com/php-...

找到这个 _id ,然后就删除呗

$deleteResult = $collection->deleteOne(['_id' => 'xxxx']);

怎么查找呢,以下语法,不知道这个 库支不支持。。

find({$where:"this.name_from_card !=this.name_from_passport"})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题