ElasticSearch基础之查询功能
【01】查询类型:
【02】基本查询和组合查询是参与打分的
1.创建映射:
注意事项:基于上面映射的创建:
"type": "keyword" # 如果某个字段的值被设置为keyword,那么这个值就不会被分析器所分析
"type": "text" # 这里设置类型为text,但我们没有设置分词器使用ik_max_word,因此ES会使用内置的分析器对中文进行分词,但是这种效果比不上ik_max_word
对于中文分词器,推荐去Github上搜索:
去github上去寻找这个插件:https://github.com/medcl/elasticsearch-analysis-ik
【02】在上面的基础上,我们来导入4条数据:
POST lagou/job/
{
"title":"python django 开发工程师",
"company_name": "美团科技有限公司",
"desc": "对django的概念熟悉,熟悉python基础知识",
"comments":,
"add_time":"2017-4-1"
}
POST lagou/job/
{
"title":"python redis分布式爬虫基本",
"company_name": "百度科技有限公司",
"desc": "对scrapy的概念熟悉,熟悉redis基础知识",
"comments":,
"add_time":"2017-4-15"
}
POST lagou/job/
{
"title":"elasticsearch打造搜索引擎系统",
"company_name": "阿里巴巴科技有限公司",
"desc": "熟悉数据结构算法,熟悉python的基本开发",
"comments":,
"add_time":"2017-4-12"
}
POST lagou/job/
{
"title":"python打造推荐引擎系统",
"company_name": "阿里巴巴科技有限公司",
"desc": "熟悉推荐引擎的原理以及算法,掌握C语言",
"comments":,
"add_time":"2017-4-12"
}
【001】重要查询之match查询,使用了分词查询:
【002】【02】term查询与get查询的区别:term查询传递进来的关键词是不会做任何处理的,也就是说不会进行分词,如下查询python爬虫是查询不到的:
term查询查询不到,但是match查询却可以,如下:
company_name是keyword类型,因此不会被分词器分析,只有完全匹配:
同样的道理,即使match查询可以分词,但是company_name是key_word类型,因此也是查询不到的,如下:
terms查询:只要满足了数组里面的任何一个值都可以查询出来
基于From和size来完成分页——# 控制查询的返回数量,主要用来做分页
未完待续
ElasticSearch基础之查询功能的更多相关文章
- Vc数据库编程基础MySql数据库的表查询功能
Vc数据库编程基础MySql数据库的表查询功能 一丶简介 不管是任何数据库.都会有查询功能.而且是很重要的功能.上一讲知识简单的讲解了表的查询所有. 那么这次我们需要掌握的则是. 1.使用select ...
- elasticsearch 基础 —— 请求体查询
请求体查询 简易 查询 -query-string search- 对于用命令行进行即席查询(ad-hoc)是非常有用的. 然而,为了充分利用查询的强大功能,你应该使用 请求体 search API, ...
- Elasticsearch基础但非常有用的功能之二:模板
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484584&idx=1&sn=accfb65 ...
- 最完整的Elasticsearch 基础教程
翻译:潘飞(tinylambda@gmail.com) 基础概念 Elasticsearch有几个核心概念.从一开始理解这些概念会对整个学习过程有莫大的帮助. 接近实时(NRT) Ela ...
- Elasticsearch基础教程
Reference: http://blog.csdn.net/cnweike/article/details/33736429 基础概念 Elasticsearch有几个核心概念.从一开始理解这些概 ...
- Elasticsearch文档查询
简单数据集 到目前为止,已经了解了基本知识,现在我们尝试用更逼真的数据集,这儿已经准备好了一份虚构的JSON,关于客户银行账户信息的.每个文档的结构如下: { , , "firstname& ...
- ELK(elasticsearch+kibana+logstash)搜索引擎(二): elasticsearch基础教程
1.elasticsearch的结构 首先elasticsearch目前的结构为 /index/type/id id对应的就是存储的文档ID,elasticsearch一般将数据以JSON格式存储. ...
- Elasticsearch基础知识
ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口Elasticsearch是用Java开发的,并作为Apache ...
- 15个初学者必看的基础SQL查询语句
本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...
随机推荐
- Ejb in action(六)——拦截器
Ejb拦截器可以监听程序中的一个或全部方法.与Struts2中拦截器同名,并且他们都可以实现切面式服务.同一时候也与Spring中的AOP技术类似. 不同的是struts2的拦截器的实现原理是一层一层 ...
- 取消CentOS 的图形界面 开机直接进入命令行模式(转)
(1)具体操作 #vi /etc/inittab –编辑/etc/inittab文件 找到下面语句: # Default runlevel. The runlevels used ...
- Django-mysq数据库链接问题
Django链接MySQL数据库有可能会报no model named MySQLdb, 解决办法: 首先安装pymysql 然后进入到项目目录,找到__init__.py文件,在里面添加 impor ...
- java stoi
package string.string1_4; import java.util.Scanner; public class StrToInt { /** * 将str转换为int整数 * 1. ...
- JAVA 数据筛选(第一笔数据与第二笔数据比较)
第一笔数据与第二笔数据比较 Map<String, Object> jHpictureMap = new HashMap<String, Object>(); // 存放照片S ...
- mac USB串口工具配置
安装USB serial 驱动 我的usb serial芯片是 pl2303, 先到官网上下载对应驱动,并安装.安装完成之后会要求重启. http://www.prolific.com.tw/adm ...
- openh264 在 osx 上的 nasm 问题
先在 pc 上编译,熟悉一下. 编译遇到一个问题: nasm -DUNIX64 -DPREFIX -f macho64 -I./codec/common/x86/ -o codec/common/x8 ...
- bb=Discuz与 Discuz! X ,Discuz!NT区别
没加x的,仅仅是单独的论坛. 加了x的,模块加了很多了,门户,家园,排行榜,群组,都是Discuz! X上的,而Discuz!上没有,所以说Discuz! X更加适用于建设门户网 Discuz! X ...
- Oracle中如何进行进制转换(2进制,10进制,16进制)
1.16进制转换为10进制 可以通过to_number函数实现 SQL> select to_number('19f','xxx') from dual; TO_NUMBER('19F','XX ...
- LeetCode(83)题解: Remove Duplicates from Sorted List
https://leetcode.com/problems/remove-duplicates-from-sorted-list/ 题目: Given a sorted linked list, de ...