/*** 搜索专辑* @param string $keywords     搜索词* @param int    $offset       偏移量* @param int    $limit        每页数量* @param array  $sort         排序条件, 默认按相关性排序, 支持多组(见self::$sort_*)* @param int    $content_type 专辑类型 -1:所有 0:音频 1:视频* @param array  $showTypes* @return array ['total' => 总数, 'data' => [故事ID, ...]]*/
public static function searchAlbumByTitle($keywords, $offset = 0, $limit = 10, $sort = [], $content_type = -1, $showTypes = [ShowType::SHOW_TYPE_NORMAL])
{$query = ["query" => ["bool" => ["must" => [["match" => ['title' => ["query" => $keywords,"operator"=>"or","minimum_should_match"=>"75%",]]],["term" => ['status' => 1,]],]]],"sort" => [],"_source" => "_id","from" => $offset,"size" => $limit];if ($content_type >= 0) {$query['query']['bool']['must'][] = ["term" => ['albumcontenttype' => $content_type,]];}if (count($showTypes) > 0) {$query['query']['bool']['must'][] = ["terms" => ['showtype' => $showTypes]];}$query["sort"] = self::getSort($sort);$ret = self::query($query);$ids = [];$total = empty($ret['hits']['total']) ? 0 : $ret['hits']['total'];if ($ret !== false) {foreach ($ret['hits']['hits'] as $v) {$ids[$v['_id']] = $v['_id'];}}return ['total' => $total, 'data' => $ids];
}

最主要的是这段代码
“query” => $keywords,
“operator”=>“or”,
“minimum_should_match”=>“75%”,

ES(elasticsearch)搜索标题精准匹配度调节相关推荐

  1. ElasticSearch(搜索服务器)-第一天

    1为什么使用es ElasticSearch 搜索服务器.简称es. 初识es 搜索时数据库的问题 2.1是什么 搜索服务器 软件 2.1.1互联网搜索 https://www.baidu.com/ ...

  2. Elasticsearch搜索匹配功能解析(十一)

    针对不同的数据类型,ES提供了很多搜索匹配功能: 完全匹配的term搜索 按照范围匹配的range搜索 分词匹配的match搜索 前缀匹配的suggest搜索 查询所有文档 在关系型数据库中,当需要查 ...

  3. Elasticsearch系列——全文搜索控制精准度

    作者专注于Java.架构.Linux.小程序.爬虫.自动化等技术. 工作期间含泪整理出一些资料,微信搜索[程序员高手之路],回复 [java][黑客][爬虫][小程序][面试]等关键字免费获取资料. ...

  4. 【ES】ElasticSearch搜索的底层原理?倒排索引和TF-IDF打分算法

    Elasticsearch搜索的底层原理 ES搜索是分词后,每个字可以利用FST高速找到倒排索引的位置,并迅速获取文档id列表,大大的提升了性能,减少磁盘IO. ES的搜索原理就是倒排索引 + TF- ...

  5. Elasticsearch(038):es中搜索之入门与分页搜索

    ES中搜索的方式分为两种,一种是通过URL参数进行搜索:另一种是通过POST中body请求参数进行搜索. 针对第一种我们进行简单的讲解,我们关注的核心放在第二种上面. 一.简单搜索(search) 1 ...

  6. ElasticSearch搜索语法学习(term,filter,bool,terms,range)

    ES搜索语法学习 目录 原始数据 term,filter使用 bool组合多个filter条件来搜索数据 terms搜索多个值以及多值搜索结果优化 基于range filter来进行范围过滤 手动控制 ...

  7. 极兔一面:10亿级ES海量搜索狂飙10倍,该怎么办?

    背景说明: ES高性能全文索引,如果不会用,或者没有用过,在面试中,会非常吃亏. 所以ES的实操和底层原理,大家要好好准备. 另外,ES调优是一个非常.非常核心的面试知识点,大家要非常重视. 在40岁 ...

  8. 分布式搜索elasticsearch搜索功能【进阶】

    elasticsearch搜索功能 分布式搜索elasticsearch搜索功能 1.DSL查询文档 1.1 DSL查询分类 1.2 全文检索查询 1.3 精准查询 1.4 地理坐标查询 1.5 组合 ...

  9. 全文搜索引擎 ES(Elasticsearch) 简单使用说明

    官网:https://www.elastic.co/cn/elasticsearch/ 官方文档:https://www.elastic.co/guide/en/elasticsearch/refer ...

最新文章

  1. 泡泡玛特,走出“盲盒”?
  2. 分布式网站架构后续:zookeeper技术浅析
  3. springboot Autowired BeanNotOfRequiredTypeException
  4. VI编辑,backspace无法删除解决方法
  5. 深度学习 《梯度消失和梯度爆炸》
  6. Kubernetes 网络部分
  7. (一)开机demo测试及测试流程
  8. [翻译] ios-image-filters
  9. wordpres报错sfile_exists() [function.file-exists]: File name is longer than the maximum allowed
  10. html5 扩展 cs6,Dreamweaver CS6提高了HTML5工具的效率
  11. 大文本文件打开工具_信息技术类专业常用工具软件教案1.1
  12. 无线模块怎么上传服务器,物联网WiFi模块如何进行数据传输
  13. eos 区块链 java 开发_EOS 交易验证的主要思路 - EOS 区块链开发实战
  14. 美DARPA支持研发用于救灾与高风险环境的微型机器人
  15. leaflet实现风场图
  16. 【java】org.xml.sax.SAXParseException;在实体引用中, 实体名称必须紧跟在 '' 后面。解决方法
  17. L1正则化与L2正则化
  18. 300+值得收藏的设计师资源站
  19. 12V不间断电源模块,智能直流UPS的设计需求-应用于工业电脑异常断电
  20. 京东java电话面试问题_【京东Java面试】京东电话技术面试,面试题目完全没思路。-看准网...

热门文章

  1. 华为2021.04.21校园招聘软件机考题
  2. 电脑卡顿反应慢怎么处理?提升反应速度的方法
  3. Qt中自定义控件拖拽,QT实现拖拽功能--小白友好版
  4. 一页纸说清楚“什么是大数据”
  5. 《C程序设计语言》学习笔记(01)起步
  6. web前端开发技术实验与实践(第三版)储久良编著 课外拓展训练1.1
  7. 渡虎谷SEO大赛第一阶段总结(转)
  8. 十一、kotlin的协程 - 缓存、volatile、内存屏障和cas(四) --- 跑题篇
  9. w5300在ucosIII的移植
  10. 查询MAC地址所属生产厂商