分布式搜索引擎
elasticsearch搜索功能
目录
Contents
DSL查询文档
搜索结果处理
RestClient查询文档
黑马旅游案例
DSL查询文档
• DSL查询分类
• 全文检索查询
• 精准查询
• 地理坐标查询
• 组合查询
01
DSL查询语法
DSL Query的分类
Elasticsearch提供了基于JSON的DSL(DomainSpecificLanguage)来定义查询。常见的查询类型包括:
• 查询所有:查询出所有数据,一般测试用。例如:match_all
• 全文检索(fulltext)查询:利用分词器对用户输入内容分词,然后去倒排索引库中匹配。例如:
• match_query
• multi_match_query
• 精确查询:根据精确词条值查找数据,一般是查找keyword、数值、日期、boolean等类型字段。例如:
• ids
• range
• term
• 地理(geo)查询:根据经纬度查询。例如:
• geo_distance
• geo_bounding_box
• 复合(compound)查询:复合查询可以将上述各种查询条件组合起来,合并查询条件。例如:
• bool
• function_score
DSL查询语法
DSL Query基本语法
查询的基本语法如下:
GET/indexName/_search
{
"query":{
"查询类型":{
"查询条件":"条件值"
}
}
}
//查询所有
GET/indexName/_search
{
"query":{
"match_all":{
}
}
}
评论0