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 に答える