1、match分词查询
1:query操作,字段匹配查询
2:如果匹配的是非字符串类型的 会精确匹配
3:如果匹配的是字符串类型的 会先把字符串分词["mill lane"会查询"mill lane","mill","lane"],进行匹配,按得分高低排序
GET /bank/_search
{
"query": {
"match": {
"address": "mill lane"
}
}
}
GET /bank/_search
{
"query": {
"match": {
"account_number": 136
}
}
}
2、match_phrase短语查询
1:query操作,字段匹配查询
2:整体匹配、不会进行分词
GET /bank/_search
{
"query": {
"match_phrase": {
"address": "mill lane"
}
}
}
3、multi_match多字段查询
1:query操作,多字段字段匹配查询
2:字符串分词匹配,多字段之间是或的关系,下面的语句表示address或者state字段有一个包含mill的就返回,相当于sql的like or
GET /bank/_search
{
"query": {
"multi_match": {
"query": "mill IL",
"fields": [
"address",
"state"
]
}
}
}