text_phrase
複数のフィールドに対してクエリを使用するにはどうすればよいですか?
私の場合:
ユーザーの種類hello world
。タイトルまたはコンテンツ (または両方) のフィールドに含まれるhello (cool) world
-> このドキュメントを返す
text_phrase
複数のフィールドに対してクエリを使用するにはどうすればよいですか?
私の場合:
ユーザーの種類hello world
。タイトルまたはコンテンツ (または両方) のフィールドに含まれるhello (cool) world
-> このドキュメントを返す
boost
これを行うには、クエリを使用します。タイトルにブーストを提供するために、より高度な形式のtext
クエリを使用することをお勧めします (場合によっては、フィールドの長さがスコアリングに影響するタイトル ドキュメントの基準を無効にすることも理にかなっています)。完全なサンプルは次のとおりです。
curl -XPUT localhost:9200/test -d '{
"index.number_of_shards" : 1,
"index.number_of_replicas" : 0
}'
curl -XPUT localhost:9200/test/type/1 -d '{
"title" : "hello (cool) world",
"content" : "hello (cool) world"
}'
curl -XPUT localhost:9200/test/type/2 -d '{
"title" : "hello (cool) world",
"content" : "xxx"
}'
curl -XPUT localhost:9200/test/type/3 -d '{
"title" : "yyy",
"content" : "hello (cool) world"
}'
curl -XPOST localhost:9200/test/_refresh
curl -XGET localhost:9200/test/_search?pretty -d '{
"query" : {
"bool" : {
"should" : [
{
"text" : {"content" : {"query" : "hello world"}}
},
{
"text" : {"title" : {"query" : "hello world", "boost" : 5}}
}
]
}
}
}'