如何在elasticsearch(java API)中使用queryString()? [英] How to use queryString() in elasticsearch (java API)?

查看:135
本文介绍了如何在elasticsearch(java API)中使用queryString()?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在进行弹性搜索v1.1.1
我在搜索查询中遇到问题我想知道如何解决下面的障碍



这里是我的映射

  {
token:{
type:string
}
}

索引记录中的数据是

  {
token:4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd
}
/ pre>

我的搜索是

  4r5etgg-kogignjj-jdjuty687-我想要完全匹配的记录,我需要使用哪个查询来获得完全匹配。的记录
可以完成

  QueryBuilders.queryString()? 

我使用queryString()检查,然后我确定了它对于完全匹配不是有用的



请建议我

解决方案

您可以在字符串周围放置引号以进行完全匹配:

  QueryBuilders.queryString(\4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd\); 

如果您不希望在上述字符串索引上进行部分匹配,那么该值和未搜索的值将被搜索就这样在你的映射添加:

 令牌:{
type:multi_field,
fields:{
untouched:{
type:string,
index:not_analyzed
}
}
}

然后搜索:

  {
query:{
match:{
token.untouched:4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd
}
}
}


I am working on elastic-search v1.1.1 I faced a problem with search queries .I want to know How solve below obstacle

Here is my mapping

{
  "token" : {
               "type" : "string"
            }
}

Data in indexed record is

 {
   token : "4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd"
 }

My search is

4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd

I want exact match of the record ,which query I need to use to get exact match of the record can it be done

  QueryBuilders.queryString() ?

I checked with queryString() ,then I finalized its not useful for exact match

Please suggest me

解决方案

You can put quotes around the string to do an exact match:

QueryBuilders.queryString("\"4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd\"");

If you don't want partial matches on the above string index an untokenized version of the value and search on that. In you mapping add:

"token": {
    "type": "multi_field",
    "fields": {
        "untouched":   { 
            "type": "string", 
            "index": "not_analyzed" 
        }
    }
}

Then search:

{
    "query": {
        "match": {
           "token.untouched": "4r5etgg-kogignjj-jdjuty687-ofijfjfhf-kdjudyhd"
         }
     }
}

这篇关于如何在elasticsearch(java API)中使用queryString()?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆