1
チーム文書構造の名前
{
"_id": 9,
"name": "azerty",
"tag": "dsfds",
"desc": "ggdfgsdfgdfgdf",
"captain": 8,
"coach": 8,
"members": [{
"date_joined": "2016-03-31 15:22:09",
"user_id": 8
}, {
"date_joined": "2016-03-31 19:22:35",
"user_id": 9
}],
"current_invites": [{
"invite_id": 21,
"username": "Nikki",
"user_id": "9",
"status": 1,
"date_invited": "2016-03-31 18:32:40"
}, {
"invite_id": 22,
"username": "Nikki",
"user_id": "9",
"status": 2,
"date_invited": "2016-03-31 18:33:16"
}]
}
PHPコード=
$q = '/.*'.$q.'*./';
$result = $this->coll->aggregate(
array('$match' => array('name' => $q)),
array('$project' => array('name' => 1,'members' => array('$size' => '$members'))));
上のチームを探して 'のような/のmysql' をシミュレートし、クエリを実行します
これを修正する方法がわからないことに気付いているように感じます。 mongoに移行した後に正規表現を使用しましたが、agg-matchの組み合わせでは使用していません。
これはあなたが探しているものです:http://stackoverflow.com/questions/16252208/how-to-use-regex-in-mongodb-aggregation-query-within-match –
私の状況に適したポストを見つけました'新しいMongoRegex($ q)'を使用して問題を修正しました – battlenub