1

MongoDB 的独特命令非常适合我想要实现的目标,即为集合中的特定键获得一组独特的结果。

我读过它支持正则表达式,但我不知道如何将它合并到查询中。

所以这:

db.runCommand({distinct:'cars',key:'car_company.name'})

会回来

{
    "values" : [
        "Chevy",
        "Porche",
        "Chevrolet",
        "BMW",
        "Mercedes-Benz",
    ],
    "stats" : {
        "n" : 5,
        "nscanned" : 5,
        "nscannedObjects" : 5,
        "timems" : 0,
        "cursor" : "BasicCursor"
    },
    "ok" : 1
}

我将如何构建这个查询,以便它只返回匹配正则表达式“chev”的唯一值?

4

1 回答 1

1

php你可以通过这样做来实现这一点

$cars = $db->command(
    array(
        "distinct" => "car_collection",
        "key" => "car_company.name",   // or what so ever key you wish to be distinct
        "query" => array("car_company.name" => new MongoRegex("/^chev/i"))
    )
);
于 2013-01-06T13:51:07.483 回答