全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
1198 2
2021-04-26
一、elasticsearch-查询表达式(Query DSL)
用来编写查询语句。
1. 使用方法:
将查询语句传递给query参数①空查询
在使用上等价于match_all,匹配所有文档,查询所有
(仅为方便自己查阅,故没有换行)
复制代码
②如果查询只是针对某个字段
复制代码
③match的用法
支持全文检索和精确查询。
全文检索:如果是两个以上的单词进行检索,会先拆出来,把拆出来的单个和组合在一起的都检索一遍(term不会分词,但是还没有具体的学)
精确查询:对于精确值的查询,可以使用 filter 语句来取代 query,因为 filter 将会被缓存
④match_phrase的使用
查询短词,不会分词。
复制代码
这样查询不会检索出分词,不会检索出a 其他 red,只会检索出a red
⑤复合语句
(1)“bool”用于合并其他的查询语句
(i)参数说明
must:文档中必须匹配才能包括进来
must_not:文档中必须不匹配才能包括进来
should:满足其中的条件之一加一分,满足越多分数越高相关性越大。
filter:不评分,必须匹配,过滤机制。
以上四个参数的用途可以用到两种结构化语句中去:
结构化查询:内容查询中使用的bool和match字句,计算文档的匹配分数
结构化过滤:只是简单的决定文档是否匹配,内容过滤中使用的term和range字句,不影响得分
(2)复合实例
(i)分页查询(注意不要用此方法深度分页,会有性能问题)
复制代码
从第二条开始查两条
有一个问题,字段指的是什么?是变量名还是变量值?(类似的概念)
(ii)指定查询出来的数据返回的字段
复制代码
数据只返回name和price字段
(iii)找ad字段中包含单词white
复制代码
(iv)加入按照特定参数排序功能
复制代码
(v)价格字段大于5000,且ad字段中包含单词white
复制代码






二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-4-28 12:59:58
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-4-30 18:54:22
elasticsearch ?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群