如何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}}
}
]
}
}
}'