常用DSL语句

常用DSL语句

查看所有索引
GET /_cat/indices?v
删除某个索引
DELETE /skuinfo
新增索引
PUT /user
创建映射
PUT /user/userinfo/_mapping

{

    "properties": {

        "name": {

            "type": "text",

            "analyzer": "ik_smart",

            "search_analyzer": "ik_smart",

            "store": false
            
        },

        "city": {

            "type": "text",

            "analyzer": "ik_smart",

            "search_analyzer": "ik_smart",

            "store": false
            
        },

        "age": {
            
            "type": "long",

            "store": false
        },
        "description": {

            "type": "text",

            "analyzer": "ik_smart",

            "search_analyzer": "ik_smart",

            "store": false
            
        }
    }
}
新增文档数据 id=1
PUT /user/userinfo/1

{

    "name": "小明",

    "age": 22,

    "city": "深圳",

    "description": "小明来自湖北武汉!"

}
更新数据(PUT会更新所有域的数据)
PUT /user/userinfo/1

{

    "name": "小美",

    "description": "在武汉读书,家在武汉!在深圳工作!"

}
更新数据(POST只更新某个域的数据)
POST /user/userinfo/1/_update

{

    "doc": {

        "name": "张三丰",

        "description": "在武汉读书,家在武汉!在深圳工作!"

    }

}
根据ID查询
GET /user/userinfo/1
根据ID删除数据
DELETE user/userinfo/1

查询当前索引所有文档内容
GET /user/_search

降序搜索(order : desc)
GET /user/_search

{

    "query": {

        "match_all": {}

    },

    "sort": {

        "age": {

            "order": "desc"

        }

    }

}

升序搜索(order : asc)
GET /user/_search

{

    "query": {

        "match_all": {}

    },

    "sort": {

        "age": {

            "order": "asc"

        }

    }

}

分页实现(from:从n的记录开始查询;size:每页显示条数)
GET /user/_search

{

    "query": {

        "match_all": {}

    },

    "sort": {

        "age": {

            "order": "desc"

        }

    },

    "from": 0,

    "size": 3

}

单词过滤查询(term)
GET _search

{

    "query": {

        "term": {

            "city": "武汉"

        }

    }

}

多词过滤查询(terms)
GET _search

{

    "query": {

        "terms": {

            "city": [

                "武汉",

                "广州"

            ]

        }

    }

}

范围过滤(range;gt表示> gte表示=>;lt表示< lte表示<=)
GET _search

{

    "query": {

        "range": {

            "age": {

                "gte": 30,

                "lte": 57

            }

        }

    }

}

包含某个域的数据检索(exists)
GET _search

{

    "query": {

        "exists": {

            "field": "address"

        }

    }

}

过滤搜索 bool (must : 多个查询条件的完全匹配,相当于 and;
must_not : 多个查询条件的相反匹配,相当于 not;
should : 至少有一个查询条件匹配, 相当于 or)
GET _search

{

    "query": {

        "bool": {

            "must": [

                {

                    "term": {

                        "city": {

                            "value": "深圳"

                        }

                    }

                },

                {

                    "range": {

                        "age": {

                            "gte": 20,

                            "lte": 99

                        }

                }

            ]

        }

    }

}

查询所有索引的所有文档( match_all)
GET _search

{

    "query": {

        "match_all": {}

    }

}

字符串查询(match:标准搜索;会对搜索条件进行分词后再查询)
GET _search

{

    "query": {

        "match": {

            "description": "武汉"

        }

    }

}

前缀匹配(prefix)
GET _search

{

    "query": {

        "prefix": {

            "name": {

                "value": "小"

            }

        }

    }

}

多个域匹配搜索(multi_match)
GET _search

{

    "query": {

        "multi_match": {

            "query": "深圳",

            "fields": [

                "city",

                "description"

            ]

        }

    }

}

通配符搜索(wildcard;*代表0~N个字符,使用?代表1个字符)
GET _search

{

    "query": {

        "wildcard": {

            "name": "小?"

        }

    }

}

 
 

简书同步更新网址:

放开那个姑娘吖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值