在MongoDb上查找多个文档值到一个文档中

时间:2016-06-09 09:52:28

标签: php arrays mongodb php-mongodb database

我想从MongoDB数据库中提取一个ean列表。 使用“find()”,我会得到单独的文档。我想在文档的独特视图中获得一个ean列表,或者至多在一个数组中。 我知道我可以在php中读取数据并处理它们。 但是,由于我正在学习使用MongoDB和PHP的“MongoDB驱动程序”,我想了解如何使用命令直接从数据库中提取数据。

我的数据库:

{
   "_id" : "ID0001",
   "ean" : [ 
       "4960999612638", 
       "4960999150437",
       "0050332160514"
   ]
}
{
   "_id" : "ID0002",
   "ean" : [ 
       "4960999213743"
   ]
}
{
    "_id" : "ID0003",
    "ean" : [ 
        "0050332143265", 
        "0050332143258"
    ]
}
{
    "_id" : "ID0004",
    "ean" : [ 
        "0050332160514"
    ]
}

我想得到(或类似):

{
   "ean" : [
      "4960999612638"
      "4960999150437"
      "0050332160514"
      "4960999213743"
      "0050332143265"
      "0050332143258"
   ]
}

我也会删除结果中的重复ean,但这是另一个故事......

我可以用mongodb做到这一点吗?

感谢所有想要帮助的人!

1 个答案:

答案 0 :(得分:0)

我建议使用不同的功能。我对php不是很熟悉,但我认为代码看起来像是这样:

$collection->distinct("ean");