0
こんにちは、私はマングースコレクションの検索オプションを作成しています。問題はキーワード処理にあります。カンマ区切りまたはスペース区切りの場合は、OR条件パラメータとして扱う必要があります。このように複数の入力を追跡するにはどうすれば ""できますか?カンマ区切り。すべての参考文献または例は非常に有用です。テーブルの全文検索ページを作成する
こんにちは、私はマングースコレクションの検索オプションを作成しています。問題はキーワード処理にあります。カンマ区切りまたはスペース区切りの場合は、OR条件パラメータとして扱う必要があります。このように複数の入力を追跡するにはどうすれば ""できますか?カンマ区切り。すべての参考文献または例は非常に有用です。テーブルの全文検索ページを作成する
$textオペレーターのドキュメントをご覧ください。
は、あなたが次の書類を持ってposts
と呼ばれるコレクションを持っていると仮定しましょう:
{postText: 'The dog ran really fast.'},
{postText: 'The cat ran pretty slow.'},
{postText: 'That hampster is crazy fast.'}
は、テキストインデックスを作成していることを確認してください。
あなたの - または - の場合は、スペースで区切られたキーワードを渡してください。
// this will return all documents
db.posts.find({$text: {$search: 'dog cat hampster'}})
// this will return two documents (dog & hampster)
db.posts.find({$text: {$search: 'really fast'}})
フレーズを正確に一致させるには、引用符で囲みます。
// this will return one document (dog)
db.posts.find({$text: {$search: '"really fast"'}})
これらも組み合わせることができます。
// this will return all documents
db.posts.find({$text: {$search: '"really fast" cat'}})
希望します。
あなたの提案に感謝@derek soike。しかし、入力がユーザーから提供されたとき、どうすれば「本当に速い」のような単一の単語か、「本当に」という2つの単語か、「速い」という単語を分類できますか? – NKMY