php - Mongodb php查询,在数组中搜索?

标签 php mongodb mongodb-php

我正在寻找一种在具有以下结构的“answers”文档数组中搜索关键字(例如“Henrik”)的方法

Array
(
[_id] => MongoId Object
    (
        [$id] => 4eeedd9545c717620a000007
    )

[formId] => 6
[respId] => 4eeedd95c93228
[dateCreated] => 2011-10-14 07:45
[answers] => Array
    (
        [field1] => Henrik
        [field6] => myemail@domain.com
        [field7] => my city address
    )

)

我在这个项目上用 PHP 工作,这样的查询当然有效:

$answers = $collection->find( array('formId' => 6, 'answers.field1'=> 'Henrik' ) );

我想做的是在没有答案数组的特定键的情况下进行搜索,就像这样

$answers = $collection->find( array('formId' => 6, 'answers'=> 'Henrik' ) );

是否可以进行此类查询? 如果这是转贴,我很抱歉。我无法在这里或在 Google 上找到任何关于此的示例。

最佳答案

$answers = $collection->find( array('formId' => 6, 
           'answers'=>
                      array('$in' => array('Henrik'))));

关于php - Mongodb php查询,在数组中搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8561147/

相关文章:

php - 使用 PHP MYSQL 和 foreach 语句使用多级菜单

php - PayPal Chained Payment(钱不去二次)

PHP、MySQL 连接表显示信息不正确

mongodb - 在MongoDB中计算距离不准确

php - 更新具有未知修改字段的 MongoDB 集合的最佳实践

mongodb - 如何在 MongoDB 中存储多对多关系

php - 如何从 MySQL 数据库检索选定的行并将信息发送回 Android?

node.js - MongoDB/Mongoose 索引使查询更快还是变慢?

python - 使用 MongoDB,如何根据匹配项从列表中删除嵌入的文档

php - MongoConnectionException - 无法连接到 : localhost:27017