新增命令:
POST /index/type/id
index:要新增的数据的索引(如果不存在将会新增)
type:要新增的数据的类型(如果不存在会新增)
id:新增数据的id
该命令为覆盖,可多次执行,第一次执行是新增,之后相同命令执行是修改,会覆盖掉之前记录的所有字段
PUT /test_index/product/4
{
"name":"ceshishuju1",
"desc": "ceshishuju1 de desc",
"price":30,
"producer":"aaaa"
}
修改命令:
POST /index/type/id
命令意义同新增
该命令修改指定字段的数据
POST /test_index/product/4/_update
{
"doc": {
"name": "zhixing xiugai mingling"
}
}
查询命令
GET /index/type/id
意义同上
GET /test_index/product/4
删除命令
DELETE /index/type/id
意义同上
DELETE /test_index/product/4
query string search查询
将请求参数条件放到curl后构成完整的查询请求,生产环境极少用到
GET /test_index/product/_search?q=name:zhixing&sort=price:desc
DSL查询
DSL: domain specified language 特定领域的语言
http request body:请求体,可以用json的格式来构建查询语法,相较于query string search强大很多
分页查询指定索引下数据的指定字段,并按指定字段排序
其中:
(1)query:设置查询条件;(2)match:条件为匹配,是全文检索,会将字段按照单词拆解为多个单词,只要包含这谢单词中的一个即可命中,与match相对应的是match_phrase,该条件不会将字段拆解,需要包含完整字段才可命中;(3)sort:设置排序字段,是个数组;(4)from:从指定下标开始分页,size:指定下标后数据个数;(5)_source:获取数据的_source中指定的字段
GET /test_index/product/_search
{
"query": {
"match": {
"name":"ceshishuju1"
}
},
"sort": [
{
"privce":"desc"
}
],
"from":1,
"size":1,
"_source":["name","price"]
}