elasticSearch学习入门-DSL查询

本文介绍了Elasticsearch的DSL查询,包括match条件查询、term-level查询等,详细讲解了各种查询方式的用法和特点,如match_phrase、range查询、fuzzy查询等,帮助读者掌握Elasticsearch的搜索和过滤技巧。
摘要由CSDN通过智能技术生成

1. 概念

​ 在es中搜索是非常重要的核心功能(说白了使用es存储数据主要目的就是为了更好更快更准确的搜索)而Elasticsearch提供了一种json风格的查询语言,称为Query DSL(Query domain-specific language)。查询语言功能很全面能结果我们生产中绝大部分的查询需求。下面跟随笔者一起来学习一下DSL查询的功能。

GET请求: http://ip:port/{
   index_name}/{
   type}/_search

GET: http://xxx.xx.x.xxx:9200/singers/singer/_search

DSL搜索 请求url是如上固定的,我们只需要修改json类型的查询条件

2. 数据准备

//1. 设置相关映射关系
{
   
	"properties": {
   
		"name": {
   
			//字符串
			"type": "text",
			"index": "true",
			"analyzer": "ik_max_word",
            //为name添加 keyword字段用于term精确查找
			"fields": {
   
				"keyword": {
   
					"ignore_above": 256,
					"type": "keyword"
				}
			}
		},
		"desc": {
   
			//日期类型
			"type": "text",
			"index": "true",
			//分词器 
			"analyzer": "ik_max_word",
             //为desc添加 keyword字段用于term精确查找
			"fields": {
   
				"keyword": {
   
					"ignore_above": 256,
					"type": "keyword"
				}
			}
		}
	}
}

//2. 填充数据 不会bulk批量插入 见谅
POST http://xxx.xx.x.xx:9200/singers/singer/ 
{
   
		"id": 42,
		"name": "音阙诗听",
		"signer_id": 1288409,
		"images": "http://y.gtimg.cn/music/photo_new/T001R150x150M000002vALgR3hRRlv.webp",
		"height": 1.64,
		"bitthday": "1994-10-21",
		"status": true,
		"desc": "音阙诗听音乐社,成立于2016年11月1日,由殇小瑾与李俊羽发起组织,聚集了全国各地一群对传统与流行音乐有相同和理念的朋友。成员在曲,词,演奏,演唱,后期制作,MV制作,美工,宣传等方面各展其长"
	}

3. match条件查询

3.1 查询全部
//查询全部
{
   
  "query": {
    "match_all": {
   } }
}
3.2 match查询

match 查询可操作文本、数值和日期类型的数据,

{
   
	"query": {
   
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值