创建索引
PUT store //创建索引
GET /store //查看索引
DELETE store //删除索引
创建数据结构
PUT /store/_mapping/products?pretty
{
"properties": {
"price": {
"type": "long"
},
"name": {
"type": "text"
},
"owner": {
"type": "nested",
"properties": {
"name": {
"type": "text"
},
"age": {
"type": "long"
}
}
}
}
}
PUT /s*/_mapping/products
{
"properties": {
"name":{
"type": "text",
"fields": {
"keyword":{
"type": "keyword",
"ignore_above": 256
}
}
},
"owner": {
"type": "nested",
"properties": {
"name": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
}
}
存储数据
POST /store/products/_bulk
{ "index": { "_id": 1 }}
{ "price" : 10, "name" : "陕西省西安市莲湖","owner":{"name" :"陕西省西安市莲湖","age":30}}
{ "index": { "_id": 2 }}
{ "price" : 20, "name" : "陕西省榆林市本地" ,"owner":{"name" :"陕西省榆林市本地","age":50}}
{ "index": { "_id": 3 }}
{ "price" : 30, "name" : "陕西省咸阳市本地","owner":{"name" :"陕西省咸阳市本地","age":20} }
{ "index": { "_id": 4 }}
{ "price" : 40, "name" : "陕西省榆林市莲湖","owner":{"name" :"陕西省榆林市莲湖","age":10} }
模糊匹配
GET /store/_search
{
"query": {
"match_phrase": {
"name": ".*榆林市本地.*"
}
}
}
运行结果截图

nested对象的模糊匹配
GET /store/_search
{
"query": {
"bool": {
"must": [
{
"nested": {
"path": "owner",
"query": {
"match_phrase": {
"owner.name": ".*榆林市本地.*"
}
}
}
}
]
}
}
}
运行结果截图
