针对转载文章https://mp.csdn.net/mp_blog/creation/editor/118930537中的boost进行验证,发现转载文章中针对boost影响范围说明有误,特进行验证。实际全文索引(match query)、前缀prefix、模糊wildcard、范围查询range都是生效的。
创建索引
PUT /test/
{
"settings":{
"index":{
"number_of_shards" : "3",
"number_of_replicas" : "0"
}
},
"mappings": {
"properties":{
"name":{
"type":"keyword"
},
"age":{
"type": "long"
},
"address":{
"type":"text"
}
}
}
}
填充数据
POST /test/_doc
{
"name": "quick",
"age":10,
"address":"quick brown one fox five"
}
POST /test/_doc
{
"name": "quick",
"age":20,
"address":"search quick"
}
模糊查询
POST /test/_search
{
"query": {
"bool": {
"should": [
{
"wildcard": {
"address": {
"value": "*arch",
"boost" : 2
}
}
},
{
"wildcard": {
"address": {
"value": "*own",
"boost" : 3
}
}
}
]
}
}
}
"hits" : [
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kCMMzXoBkppsa-8Ho6cl",
"_score" : 3.0,
"_source" : {
"name" : "quick",
"age" : 10,
"address" : "quick brown one fox five"
}
},
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kSMMzXoBkppsa-8Hq6dh",
"_score" : 2.0,
"_source" : {
"name" : "quick",
"age" : 20,
"address" : "search quick"
}
}
]
前缀查询
POST /test/_search
{
"query": {
"bool": {
"should": [
{
"prefix": {
"address": {
"value": "sea",
"boost" : 2
}
}
},
{
"prefix": {
"address": {
"value": "br",
"boost" : 3
}
}
}
]
}
}
}
"hits" : [
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kCMMzXoBkppsa-8Ho6cl",
"_score" : 3.0,
"_source" : {
"name" : "quick",
"age" : 10,
"address" : "quick brown one fox five"
}
},
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kSMMzXoBkppsa-8Hq6dh",
"_score" : 2.0,
"_source" : {
"name" : "quick",
"age" : 20,
"address" : "search quick"
}
}
]
范围查询
POST /test/_search
{
"size":30,
"query":{
"bool": {
"should": [
{
"match": {
"address": {
"query": "brown",
"boost": 5
}
}
},
{
"range": {
"age": {
"gte": 15,
"lte": 30,
"boost": 1
}
}
}
]
}
}
}
"hits" : [
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kCMMzXoBkppsa-8Ho6cl",
"_score" : 1.4384103,
"_source" : {
"name" : "quick",
"age" : 10,
"address" : "quick brown one fox five"
}
},
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kSMMzXoBkppsa-8Hq6dh",
"_score" : 1.0,
"_source" : {
"name" : "quick",
"age" : 20,
"address" : "search quick"
}
}
]
match查询
POST /test/_search
{
"size":30,
"query":{
"bool": {
"should": [
{
"match": {
"address": {
"query": "brown",
"boost": 1
}
}
},
{
"match": {
"address": {
"query": "search",
"boost": 5
}
}
}
]
}
}
}
[
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kSMMzXoBkppsa-8Hq6dh",
"_score" : 1.4384103,
"_source" : {
"name" : "quick",
"age" : 20,
"address" : "search quick"
}
},
{
"_index" : "test",
"_type" : "_doc",
"_id" : "kCMMzXoBkppsa-8Ho6cl",
"_score" : 0.2876821,
"_source" : {
"name" : "quick",
"age" : 10,
"address" : "quick brown one fox five"
}
}
]