如何使用java在elasticsearch中搜索JSON字段?
问题描述:
这是JSON
,我想用一个搜索:如何使用java在elasticsearch中搜索JSON字段?
{
"_index" : "test", "_type" : "insert", "_id" : "3",
"_version" : 2, "found" : true,
"_source" : {
"ACCOUNT_ID" : "123",
"CONTACT_ID" : "ABC"
}
}
如何搜索所有具有ACCOUNT_ID
从1开始的JSON
?
答
从我看到你的评论中,你正试图找到id从1开始。那么如果你的分析仪是标准分析仪,那么ID“123”就像“123”一样被标记。你可以使用通配符并像'1 *'一样搜索。小心使用通配符,因为它需要一些内存。
在这里看到:QueryString - Wildcard
答
您可以使用通配符elasticsearch搜索从1
GET index/_search
{
"query": {
"wildcard": {
"ACCOUNT_ID ": {
"value": "1*"
}
}
}
}
在Java中启动一个ACCOUNT_ID,你可以尝试这样的事:
QueryBuilders.wildcardQuery("ACCOUNT_ID ", "1*");
+0
QueryBuilders.wildcardQuery(“ACCOUNT_ID”,“1 *”)正在给零点击。我的意思是:[]是空的 –
+0
你可以上传你的Java程序吗? – Rose
请清除它,如果,您的意思是:ACCOUNT_ID = 1的前缀或ACCOUNT_ID从1,2,3,.....? – sunkuet02
@AbdullaAlSun问题说明Account ID值在不同的JSON(独立文档)中是不同的。 –
ACCOUNT_ID是一个字符串值。所以现在在这个例子中它是“123”,我想知道如何以ACCOUNT_ID从“1”开始检索所有的JSON。或 –