使用 shuf 来打乱一个文件中的行或是选择文件中一个随机的行。

小白求教, query加上分词字典以后精准查询无结果了

Elasticsearch | 作者 Yu Tao | 发布于2018年05月03日 | 阅读数:2254

小白求教,
 
我的文档结构是:
{
   "authors":[
          {"author":"张三","url":"},[/url]
            {"author":"李四","url":"http://xxxxxxxx"}
      ]
}
 
我定义了mapping
 
{
    "authors": {
        "properties": {
            "author": {
                "type": "text",
                "analyzer": "ik_smart"
            },
            "doctorId": {
                "type": "text"
            },
            "url": {
                "type": "text"
            }
        }
    }
}
 
然后 我加了ik的分词字典,张三,李四,
然后我用_search:
{
  "query": {
    "match": {
      "authors.author": "陈珲"
    }
  }
}
并没有返回结果
 
但是如果我把分词字典里面 张三,李四都删除掉,就可以查出来。可是像是ik_max_word那种形式。 
请问,我想精准查询这个张三,我要怎么写呢?这种情况又是什么原因呢?
已邀请:

tc

赞同来自: Yu Tao

姓名为啥要用分词器分?分词器不能很好的把名字当做词啊。改用term查询是不是好点?

lz8086 - es小司机

赞同来自:

需要或者加个keywords字段,保留下未分词的名字

Yu Tao

赞同来自:

已解决, 关贴

要回复问题请先登录注册