Elasticsearch的过滤查询
声明:我使用的elasticsearch的版本是5.4.0,具体参考下面的链接
https://www.elastic.co/guide/en/elasticsearch/reference/5.4/query-dsl-filtered-query.html
filtered 查询已经被bool 查询取代了,
bool查询:
https://www.elastic.co/guide/en/elasticsearch/reference/5.4/query-dsl-bool-query.html
对应的PHP查询的body如下:
// 带过滤的查询语句,过滤where furniture_type_id = 1 and apt_id = 1266
$params = [
'index' => 'dpjia',
'type' => 'apartment',
'size' => 100,
'body' => [
'query' => [
'bool' => [
'must' => [
'match' => [
'apt_name' => '户型'
]
],
//filter 相当于 SQL 里的where条件 where furniture_type_id = 1 and apt_id = 1266
'filter' => [
[
'term' => [
'furniture_type_id' => 1
]
],
[
'term' => [
'apt_id' => 1266
]
]
]
],
]
]
]; $response = self::$client->search($params);
print_r($response);
Elasticsearch的过滤查询的更多相关文章
- 利用kibana插件对Elasticsearch进行bool查询
#bool查询#老版本的filtered查询已经被bool代替#用 bool包括 must should must_not filter来完成 ,格式如下:#bool:{# "filter ...
- ElasticSearch 基本概念 and 索引操作 and 文档操作 and 批量操作 and 结构化查询 and 过滤查询
基本概念 索引: 类似于MySQL的表.索引的结构为全文搜索作准备,不存储原始的数据. 索引可以做分布式.每一个索引有一个或者多个分片 shard.每一个分片可以有多个副本 replica. 文档: ...
- elasticsearch GIS空间查询问题解决
在GIS行业的应用越来越广泛,GIS最常用根据区域进行空间数据查询 我定义了两个方法,一起来看一下: /** * geodistance filter * 一个过滤器来过滤基于一个特定的距离从 ...
- Elasticsearch文档查询
简单数据集 到目前为止,已经了解了基本知识,现在我们尝试用更逼真的数据集,这儿已经准备好了一份虚构的JSON,关于客户银行账户信息的.每个文档的结构如下: { , , "firstname& ...
- Elasticsearch(GEO)空间检索查询
Elasticsearch(GEO)空间检索查询python版本 1.Elasticsearch ES的强大就不用多说了,当你安装上插件,搭建好集群,你就拥有了一个搜索系统. 当然,ES的集群优化和查 ...
- Elasticsearch 常用基本查询
安装启动很简单,参考官网步骤:https://www.elastic.co/downloads/elasticsearch 为了介绍Elasticsearch中的不同查询类型,我们将对带有下列字段的文 ...
- Elasticsearch(9) --- 聚合查询(Bucket聚合)
Elasticsearch(9) --- 聚合查询(Bucket聚合) 上一篇讲了Elasticsearch聚合查询中的Metric聚合:Elasticsearch(8) --- 聚合查询(Metri ...
- ELK 学习笔记之 elasticsearch bool组合查询
elasticsearch bool组合查询: 相当于sql:where _type = 'books' and (price = 500 or title = 'bigdata') Note: mu ...
- Elasticsearch系列---聚合查询原理
概要 本篇主要介绍聚合查询的内部原理,正排索引是如何建立的和优化的,fielddata的使用,最后简单介绍了聚合分析时如何选用深度优先和广度优先. 正排索引 聚合查询的内部原理是什么,Elastich ...
随机推荐
- mysql的一些密码错误问题,并从windows登录linux主机的mysql
mysqld_safe --skip-grant-tables& mysql -u root mysql 可以修改密码: mysql>update mysql.user set auth ...
- matplotlib模块之plot画图
关于matplotlib中一些常见的函数,https://www.cnblogs.com/TensorSense/p/6802280.html这篇文章讲的比较清楚了,https://blog.csdn ...
- vRA7 Software Component
将自定义Property传递给Software Component 示例: vRA7 支持 Software Components,并且还可以在用户的申请页面中,做一个下拉菜单,让用户选择需要安装的S ...
- MongoDB快速入门(二)- 数据库
创建数据库 MongoDB use DATABASE_NAME 用于创建数据库.该命令如果数据库不存在,将创建一个新的数据库, 否则将返回现有的数据库. 语法 use DATABASE语句的基本语法如 ...
- eclipse设置高亮显示的颜色
设置高亮显示的颜色:Window-->preferences-->General-->Editors-->Text Editors-->Annotations--> ...
- Maven配置一键部署远程Tomcat
1. 首先需要配置远程Tomcat的访问权限(设置访问用户名密码) http://www.cnblogs.com/liuchao102/p/5519345.html 2. 配置pom.xml 添加to ...
- AppDomain.CurrentDomain.BaseDirectory
在winform中的OnPaint事件中,AppDomain.CurrentDomain.BaseDirectory得到的是下面这个路径 C:\Program Files (x86)\Microsof ...
- uniqueidentifier in SQL becomes lower case in c#
https://stackoverflow.com/questions/16938151/uniqueidentifier-in-sql-becomes-lower-case-in-c-sharp ...
- CocoaPods安装使用
$ gem sources --remove https://rubygems.org/ //等有反应之后再敲入以下命令 $ gem sources -a http://ruby.taobao.org ...
- 文件系统中跳转【TLCL】
pwd - Print name of current working directory cd - Change directory ls - List directory contents Lin ...