MongoDBを使用してコーヒーに関する情報を保存していますが、クエリに問題があります。MongoDBのクエリの種類を混ぜる
マイドキュメント構造は次のとおりです。
{ _id: "Thailand Bok", tags: ["Strong", "Smooth", "Dark"] }
私は私が名前やタグのいずれかを検索することができますクエリを作成しようとしています。
クエリ文字列が "Thailand Bok"または["Strong"、 "Smooth"]の場合、_idタグまたは各タグを含むリクエストを検索したいとします。
私はSQLの用語で考えていたならば、それはこのようなものになることがあります。
"WHERE `_id` like 'Not present%' OR ("Strong" IN `tags` AND "Smooth" IN `tags`)"
私がこれまで持っているクエリは次のとおりです。
{
$or: [
{ _id: { $regex: '^Not present', '$options': 'i' } },
{
$and: [
{ tags: 'Strong' },
{ tags: 'Smooth' }
]
}
]
}
編集:クエリ内の誤りを訂正し、明確化_idが一致するかタグが一致するかのどちらかで動作するはずです
どのようにあなたのために行くのですか? '$と'の周りに '' 'が必要ですか? – mindandmedia