一、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" } } }