ES(3)映射关系

创建映射关系

创建mapping映射类似于我们创建表结构,规定字段什么类型,多长等基本信息。

先创建 索引 PUT http://127.0.0.1:9200/user

然后创建映射关系

PUT http://127.0.0.1:9200/user/_mapping

{
    "properties":{
        "name":{
            "type":"text", // text 文本 可以分词
            "index":true    // 可以索引查询 
        },
        "sex":{
            "type":"keyword", // 不可以分词
            "index":true
        },        
        "tel":{
            "type":"keyword", // 不可以分词
            "index":false
        }
    }
}

更具映射关系创建数据

POST http://127.0.0.1:9200/user/_doc/1001

{
    "name":"小花",
    "sex":"男",
    "tel":"123456"
}

查询有什么区别呢?

GET http://127.0.0.1:9200/user/_search

{
    "query":{
        "match":{
            "sex":"男的"
        }
    }
}

会发现没有查到数据,为什么没有分词呢?因为mapping限制的sex为keyword

GET http://127.0.0.1:9200/user/_search

{
    "query":{
        "match":{
            "tel":"123456"
        }
    }
}

报错了!因为他的index是false,没有索引不支持查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值