es基本语句详解 查询语句详解
es基本语句详解 查询语句详解
- 声明
- Rest风格
- 索引的基本操作
- 1. 创建一个索引
- 2. 查看索引 我们使用elasticsearch-head
- 3. 删除索引
- 其它命令
- ==文档的基本操作(重点)==
- 添加数据
- 修改文档
- 删除文档
- 查找(重重重点)
- 通过id查找
- 通过某个字段查找
- 指定条件查找
- 结果过滤
- 排序
- 分页查询
- 多条件或与非查找
- 过滤器:范围查找
- 精确查找
- 高亮查询
声明
本文涉及的es, elasticsearch-head, kibana, ik分词器的安装配置可以参考我的其它博客
本文主要参考狂神说java视频课程编写。主要是为了巩固学习,复习方便。
Rest风格
索引的基本操作
1. 创建一个索引
PUT /索引名/(可选)类型名/文档id
{请求体}
2. 查看索引 我们使用elasticsearch-head
查看索引默认类型
到这里:完成了增加索引! 数据也成功的添加了
3. 删除索引
通过DELETE 命令实现删除,根据你的请求来判断删除索引还是删除文档记录
4. 创建索引类型mappings
我们创建时 创建了name类型,那需不需要指定类型呢。
下面是 es中的数据类型,我们可以不指定类型,es会帮我们默认选择类型
其它命令
- 查看健康状态
- 查看es中index索引, docs.count文档数量等信息
通过GET _cat/ 可以获取es的当前的很多信息! - 修改索引中的某个字段类型,
1. 创建一个中间索引
2. 向中间索引备份源索引的数据(mapping)
3. 查询确认数据是否copy过去
4. 删除有问题的索引
5. 重新创建同名的索引(★字段类型修改正确★)
6. 从中间索引还原到源索引的数据
7. 删除中间索引
文档的基本操作(重点)
添加数据
修改文档
下面两种方法,会将文档中指定位置的值替换。没有传递的值会被置为空
推荐的方法:加update修改方法,只会修改提交的值,没有提交的值不会修改
删除文档
直接指定文档即可
查找(重重重点)
通过id查找
通过某个字段查找
指定条件查找
hit:索引和文档的信息,查询结果的总数,然后就是查询出来的具体的文档,数据中的东西都可以遍历出来了,包括分数score判断谁最符合结果
结果过滤
我们之后使用java操作es,所有的方法都是这里的key
排序
reason: 经过查证是字段col54类型为Text格式,然后涉及到了聚合排序等功能。没有进行优化,也类似没有加索引。没有优化的字段es默认是禁止聚合/排序操作的。所以需要将要聚合的字段添加优化
正确的
分页查询
分页查询 数据下标还是从0开始
多条件或与非查找
布尔值查询–多条件查询
must命令:所有的条件都要符合,and
should 或操作
must_not 非操作
过滤器:范围查找
lt : 小于
gt : 大于
lte : 小于等于
gte : 大于等于
匹配多个条件:
多条件使用空格进行分割就可以
只要满足其中一个就可以查出
可以根据权重分支score 判断
精确查找
term 查询是直接通过倒排索引指定的字条进程精确查找!
创建demo索引,一个是text类型,一个是keyword类型
使用keyword
使用standard 可以看到被拆分了
使用term
一下两个查询,第一个根据name 是txt类型。所以只要有一个值,就会被匹配到。
第二个是根据desc 是keyword类型。 必须完全匹配才可以查询到
得出结论:keyword字段类型不会被分词器解析
多个值匹配的精确查询
高亮查询
自定义查询
es基本语句详解 查询语句详解相关推荐
- mysql查询语句 变量_mysql查询语句中用户变量的使用
先上代码吧 SELECT `notice`.`id` , `notice`.`fid` , `notice`.`has_read` , `notice`.`notice_time` , `notice ...
- oracle 数据语句优化,oracle 查询语句优化录
最近,因为发现以前使用的数据查询语句的效率越来越差,导致每次进行大量数据的操作都需要耗一个小时以上.这速度实在是太龟慢了,简直是无法忍受了.本人决定亲自拿把杀猪刀砍向它,好给它颜色瞧瞧.经过一系列的测 ...
- java mysql语句_java mysql查询语句怎么写
展开全部 1:使用SHOW语句找出在服务器上当前存在什么数据32313133353236313431303231363533e4b893e5b19e31333363373766库: mysql> ...
- Oracle常用语句:分页查询语句的写法
Oracle分页查询语句使我们最常用的语句之一,下面就为您介绍的Oracle分页查询语句的用法,如果您对此方面感兴趣的话,不妨一看. Oracle分页查询语句基本上可以按照本文给出的格式来进行套用. ...
- hive 语句总结_HiveQL查询语句总结
本文写作目的是整理出一份带注释的cheatsheet.内容组织形式为查询语句,实例,原理浅析. 基本查询语句 show databases; create database retail; use r ...
- java oracle分页查询语句_oracle分页查询语句,java得到分页查询语句的方法
oracle分页查询语句 select * from ( select a.*, rownum rn from (select * from table_name) a where rownum &l ...
- mysql 子表 关联查询语句_MySQL-基本查询语句及方法,连表和子查询
一.基本查询语句 create table emp( id intnotnull unique auto_increment, name varchar(20) notnull, sex enum(' ...
- Mysql 子查询 (查询语句中带查询语句)
子查询:指一个"正常查询语句"中的某个部分(比如select部分,from 部分,where 部分)又出现了查询的一种查询形式,比如: select * from 表名 where ...
- MySQL中SQL语句——DQL(数据查询语句)
前言: 首先对于数据库有一定的了解,会对于Mysql的学习有一定的帮助: 数据库主要分为 DB(数据库),DBMS(数据库管理系统),SQL(结构化查询语言,用于和DBMS通信的语言):这篇要讲的DQ ...
最新文章
- 验证身份证和中文名字
- 随着“造车时代”的企业网络推广之下,富士康也想入圈造车?
- 2021年春节联欢晚会第三次联排亮点多
- 第八周实践项目6 猴子选大王(数组版)
- DevExpress控件之GridControl、GridView
- CVPR 2019 | 基于可解释性以及细粒度的可视化解释卷积神经网络
- 监视和检测Java应用程序中的内存泄漏
- Adob Flash Professional CS6发布Android手机应用报异常
- python selenium 小知识点整理笔记(更新中...)
- jqueryui / accordion的用法记录
- 同步时序逻辑与异步时序逻辑
- 用perl操作excel的介绍
- Apache 配置文件:.htaccess
- java nio oio_(三:NIO系列) Java NIO Channel
- MATLAB画图线性,颜色和数据点
- 前后端数据交互(八)——请求方法 GET 和 POST 区别
- 最新服务器节点,服务器emule必备知识(更新服务器列表与kad节点文件)
- 自发光物体能被烘焙之后是否会影响周围的物体
- Android -- 广播
- 游承超:钢化玻璃膜既保护屏幕又不影响触感(4P)
热门文章
- 奔驰c语言控制系统使用方法,奔驰GLE使用手册,别说你用不上,万一实现了呢!...
- 2021年全球密封玻璃收入大约340.6百万美元,预计2028年达到454.6百万美元
- 一起了解代驾出行综合运营方案解决服务商
- Docker推送镜像到私有仓库Harbor
- dubbo SPI是不是在炫技?
- 分类和聚类的区别以及各自的常见算法
- makefile文件编写
- 挂耳式耳机品牌排行榜,排行靠前的五款骨传导耳机推荐
- 【深度学习前沿应用】文本分类Fine-Tunning
- window权限 及c++实现 【网摘】