当前位置: 首页 > 知识库问答 >
问题:

PHP MongoDB查询一个记录使用MongoId对象_id

龚鸿羽
2023-03-14

我目前正在学习MongoDB。我看过关于查询集合中字段的教程。我想知道如何在PHP中使用MongoId对象\u id值进行查询。对于我的问题,最接近的答案是Perl Mongo find object Id。

另外,是否有一种方法可以在创建新记录时,将对象id值记录在该记录的另一个字段中?

谢谢

更新时间:

除了我在下面选择的答案,一位同事也发现了这一点:

mongodb php findone()(按ID)

共有1个答案

邓鸿彩
2023-03-14

这应该会有帮助,从mongodb网站(http://blog.mongodb.org/post/26903435041/mongodb-for-the-php-mind-part-2):

// This is only a string, this is NOT a MongoId
$mongoid = '4cb4ab6d7addf98506010000';

// You will not find anything by searching by string alone
$nothing = $collection->find(array('_id' => $mongoid));
echo $nothing->count(); // This should echo 0

// THIS is how you find something by MongoId
$realmongoid = new MongoId($mongoid);

// Pass the actual instance of the MongoId object to the query
$something = $collection->find(array('_id' => $realmongoid));
echo $something->count(); // This should echo 1

关于您问题的一部分,我不知道有什么自动方法可以将objectid存储在另一个字段中,但我也不知道您为什么要这样做-您已经将其存储在了\u id中,为什么要将其存储在另一个字段中?

 类似资料:
  • Val1 Val2 Val3 Val4 Val5 Val6 Val7 Val8 Val9 Val10 Val11 Val12 Col1 Col2 Col3 Col4 Col5 Col6 Val1 Val2 Val3 Val4 Col5 Val5 Val1 Val2 Val3 Val4 Col6 Val6 Val1 Val2 Val3 Val4 Col7 Val7 Val1 Val2 Val3 Va

  • 我们不敢相信我们在问这个问题<我们如何查询SQLite数据库中的一条记录 假设我们想要id,但只知道表中的名称 这是调用DB的代码 这里是DB乐趣getOneName 这个数据库有一个模型,应用程序有一个适配器 } 我们想输入名称并检索id,但我们甚至无法检索名称<我们已经在Java中多次这样做了,但Kotlin没有成功

  • 与RDBMS类似,OrientDB支持不同类型的SQL查询以从数据库检索记录。 在检索记录时,我们有不同的变体或查询选项以及select语句。 以下语句是命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 表示想从查询中提取的数据作为结果记录集。 - 表示要查询的对象。 这可以是一个类,群集,单个记录标识,一组记录标识。可以将所有这些对象指定为目标。 - 指定过滤结果集的条件。 - 表示在

  • 这非常慢,并且refmdlist._id没有索引。解决方案是索引这个数组对象字段以加快速度,还是上面的DBCursor代码有问题? DBCursor类来自mongodb/mongo-java-driver/3.4.3/mongo-java-driver-3.4.3.jar

  • 英文原文:http://emberjs.com/guides/models/finding-records/ Ember Data仓库提供了一个非常简单的查询一类记录的接口,该接口就是store对象的find方法。在内部,store根据传入的参数使用find、findAll和findQuery完成查询。store.find()的第一个参数是记录的类型,第二个可选参数确定查询是获取所有记录,还是一条

  • 通过企业设置-操作记录,可进行此页面。可以通过操作时间、操作类型、操作人、操作内容等查询操作记录 主要的操作类型包括以下几类: 员工 部门 项目 角色 企业 用车制度 用车备注 邀约券 ……