首页 > 编程语言 > 详细

Elasticsearch Java API(九)--删除文档的field以及field的属性

时间:2016-08-04 21:39:47      阅读:268      评论:0      收藏:0      [点我收藏+]

一、需求

项目中需要实现删除文档的一个field以及删除指定field的一个属性.
以文档test/document/1为例:

{
    "_index": "test",
    "_type": "document",
    "_id": "1",
    "_score": 1,
    "_source": {
        "class": "com.test.data",
        "id": 1,
        "items": [{
            "class": "com.test.data",
            "id": 1
        }],
        "lastUpdated": "2016-07-22T11:26:56Z",
        "processInstance": {
            "class": "com.test.data",
            "id": 1
        },
        "tianshu": 0.5,
        "bianhao": "askaa3333a"
    }
}

删除”bianhao”就是删除一个field,删除”processInstance”的”id”就是删除field的一个属性.

二、删除field

client.prepareUpdate("test", "document", "1").setScript(new Script(     "ctx._source.remove(\"bianhao\")",ScriptService.ScriptType.INLINE, null, null)).get();

三、删除field的属性

client.prepareUpdate("test", "document", "1").setScript(new Script(     "ctx._source.processInstance.remove(\"id\")",ScriptService.ScriptType.INLINE, null, null)).get();

四、fild属性为数组

暂时没有找到方法,待更新.

Elasticsearch Java API(九)--删除文档的field以及field的属性

原文:http://blog.csdn.net/napoay/article/details/52119957

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!