【问题标题】:Find on MongoDb, multi document values into one document在 MongoDb 上查找,多文档值到一个文档中
【发布时间】:2016-06-09 09:52:27
【问题描述】:

我想从我的 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 做到这一点吗?

感谢所有想要帮助我的人!

【问题讨论】:

    标签: php arrays mongodb php-mongodb database


    【解决方案1】:

    我建议使用 distinct 函数。我对 php 不是很熟悉,但我认为代码应该是这样的:

    $collection->distinct("ean");
    

    【讨论】:

    • 完美!这正是我所需要的! db.getCollection('products').distinct("ean") 非常感谢!
    猜你喜欢
    • 2023-02-09
    • 1970-01-01
    • 2021-07-01
    • 2021-02-21
    • 2017-01-18
    • 2021-07-25
    • 2016-08-25
    • 2016-04-18
    • 1970-01-01
    相关资源
    最近更新 更多