1、內部腳本("script" : "ctx._source" 是內部定義好的獲取_source數據的方式,不用改變)
POST /index/type/id/_update
{
"script" : "ctx._source.field=any_result"
}
2、外部腳本
定義一個外部腳本,名稱為aa.groovy,腳本內容為ctx._source.num+=new_num
POST /test_index/test_type/id/_update
{
"script" : {
"lang" : "groovy",
"file" : "aa",
"params" : {
"new_num" : 1
}
}
}
3、用腳本刪除文檔
定義一個外部腳本,名稱為test_delete.groovy,腳本內容為 ctx.op = ctx._source.num == count ? 'delete' : 'none'
POST /test_index/test_type/id/_update
{
"script" : {
"lang" : "groovy",
"file" : "test_delete",
"params" : {
"count" : 1
}
}
}