一、ES中批量修改
POST order_sale_detail/_update_by_query { "script":{ "source":"ctx._source['create_time']='2020-04-22'" }, "query":{ "term":{ "create_time":"2020-03-16" } } }
order_sale_detail => indexName
_update_by_query => 根據查詢結果進行修改
當前代碼就是查詢到create_time = '2020-03-16'的數據中將字段create_time修改為2020-04-22。如果查詢條件沒有就是修改所有的意思
二、ES中復雜的or和and以及多條件查詢
GET order_sale_detail/_search { "query": { "bool": { "must": [ { "term": { "create_time": { "value": "2020-04-22" } } }, { "match": { "category_name": { "query":"家用電器", "operator":"or" } } } ] } } }
當前為查詢'create_time'為'2020-04-22'並且'category_name'為"家用電器"(or連接表示可分詞為家用、用電、電器等...具體根據分詞類型)的商品
如果想要兩個字段之間的且和或關系用關鍵字'must'和'should'區分。
如果是一個字段中的查詢內容是否需要分詞以及分詞效果則用"match"匹配,"query"查詢,"operator"來決定是or連接還是and連接
三、刪除數據
#刪除指定數據(根據查詢條件刪除)
POST yc_studio_content/_delete_by_query
{
"query":{
"match": {
"remarkId": 111
}
}
}
#刪除整個索引庫 DELETE yc_studio_content
四、為索引庫添加字段mapping
PUT yc_studio_content/_mapping/_doc
{
"properties": {
"createUserId": {
"type": "integer"
},
"updateUserId": {
"type": "integer"
}
}
}
