私は、弾性検索統合Angular js、Node.js、MongoDBで開発されたチャットアプリケーションを持っています。チャットの検索機能を提供しました。ユーザーは任意の組み合わせを入力できます。オプションはチャットメッセージ、ユーザー、日付です。と条件付きの2つのフィールドを持つmongoosastic検索
だから私は、複数のフィールドの組み合わせでnodejsの助けを借りて弾性検索のデータベースで検索したいと思います。たとえば、username = 'mohan'とdate = 'anydate'、2)username = 'mohan'、chatmessage = 'Hi there'のように1)検索します。
したがって、両方の条件を満たす結果が得られるはずです。
どのように私たちはmongoosasticを使ってこれを達成できますか?私は以下の質問で試しました。しかし、それはOR条件で結果を与えている、私はAND条件でしたい。
{
"query": {
"bool": {
"should": [{
"match": {
"feedMsg": "Hi there"
}
}, {
"match": {
"userId": 'mohan'
}
}, {
"range": {
"feedTime": {
"from": '27/10/2016',
"to": '27/10/2016'
}
}
}]
}
}
}