elasticsearch学习之cross_fields字段使用

2023-11-02

  • cross_fields字段:在查询阶段解决信号冲突问题
  • 问题: The cross_fields type is particularly useful with structured documents where multiple fields should match. For instance, when querying the first_name and last_name fields for “Will Smith”, the best match is likely to have “Will” in one field and “Smith” in the other.
  • 解决:The cross_field type tries to solve these problems at query time by taking a term-centric approach. It first analyzes the query string into individual terms, then looks for each term in any of the fields, as though they were one big field.
GET _search
{
  "size": 20,
  "_source": "title",
  "explain": true, 
  "query": {
    "bool": {
      "should": [
        {
          "multi_match": {
            "query": "star trek patrick stewart",
            "fields": [
              "overview","title","directors.name","cast.name"],
              "type": "cross_fields"
          }
        },
        {"multi_match": {
          "query": "star trek patrick stewart",
          "fields": [
            "directors.name.bigramed","cast.name.bigramed"],
            "type": "cross_fields",
            "boost":100
        }}
      ]
    }
  }
}
GET _search
{
  "size": 10,
  "_source": "title",
  "explain": true, 
  "query":{
    "bool":{
      "should": [
        {
          "match_phrase": {
            "title_exact_match":{
              "query":"SENTINEL_BEGIN star trek SENTINEL_END",
              "boost":1000
          }
        }},
        {
          "multi_match": {
            "query": "star trek",
            "fields": [
              "overview","title","directors.name","cast.name"],
              "type": "cross_fields"
          }
        }
      ]
      
    }
  }
}
GET _search
{
  "size": 10,
  "_source": "title",
  "explain": true,
  "query": {
    "function_score": {
      "query": {
        "multi_match": {
          "query": "william shatner patrick stewart",
          "fields": [
            "overview",
            "title",
            "directors.name",
            "cast.name"
          ],
          "type": "cross_fields"
        }
      },
      "functions": [
        {
          "weight": 2.5,
          "filter": {
            "match_phrase": {
              "title": "star trek"
            }
          }
        }
      ]
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

elasticsearch学习之cross_fields字段使用 的相关文章

  • 二叉搜索树的最近公共祖先

    题目描述 给定一棵二叉搜索树的先序遍历序列 要求你找出任意两结点的最近公共祖先结点 简称 LCA 输入 输入的第一行给出两个正整数 待查询的结点对数 M 1 000 和二叉搜索树中结点个数 N 10 000 随后一行给出 N 个不同的整数
  • CentOS 7 安装Libevent

    CentOS 7 安装Libevent 1 下载安装包 新版本是libevent 2 1 12 stable tar gz 如果你的系统已经安装了libevent 可以不用安装 官网 http www monkey org provos l
  • Java学习:打印金字塔和九九乘法表

    在打印金字塔之前 练习打印如图图形 采用双重循环 分别控制行数和每行打印星星的个数 java代码 package com lissdy public class tuxing1 public static void main String
  • 关于threeJS加载模型的坑(obj+mtl)

    threeJs加载模型时 有些材质是透明的 如果忘记设置就会出现几何片的样子 如图 模型加载之后添加模型的材质透明度 object traverse function child if child instanceof THREE Mesh
  • PMSM FOC位置环S曲线控制算法(恒定急动度)

    文章目录 一 原理 二 代码 之前做FOC位置环控制的时候 简单地加了一个S曲线控制 参考链接如下 FOC 单电阻采样 位置环控制伺服电机 这里面代码实现其实就是在每step个ADC中断中 根据函数 f x
  • 对一个文件夹下的图片进行批量缩放(resize)处理

    文章目录 问题背景 环境配置 完整代码 代码解释 另一种更简单的写法 问题背景 使用GPU训练时 有时出现了图片太大 导致处理起来速度慢或内存不够崩掉的情况 因此需要对原图片进行缩放 本文介绍了批量处理的方法 成功将一个文件下的所有图片 较
  • this.$router.go(0)的作用

    this router go val gt 在history记录中前进或者后退val步 当val为0时刷新当前页面
  • 使用mathjax解析公式

    mathjax解析公式 uniapp使用mathjax 在app vue里面动态引入mathjax const script document createElement script MathJax地址 config参数不可忽略 scri
  • Raft 一致性算法论文译文

    本篇博客为著名的 RAFT 一致性算法论文的中文翻译 论文名为 In search of an Understandable Consensus Algorithm Extended Version 寻找一种易于理解的一致性算法 Raft
  • 《Windows核心编程》---堆管理函数

    Windows的 堆 分为默认堆和私有堆两种 默认堆是在程序初始化时由操作系统自动创建的 所有标准内存管理函数都是在默认堆中申请内存的 而私有堆相当于在默认堆中保留了一大块内存 用堆管理函数可以在这个保留的内存区域中分配内存 一个进程的默认
  • LabVIEW 可配置正交频分复用软件定义无线电收发器

    OFDM 正交频分复用 是使用大量具有谐波频率间隔的调制载波并行传输数据的技术 从而使载波彼此正交 正交性允许以后可以分离的通道的频谱重叠 很像正交调制 SDR 软件定义无线电 是指一种无线电通信系统 可以配置为通过可编程硬件平台在大频谱范
  • 最新ChatGPT GPT-4 自然语言理解NLU与句词分类技术详解(附ipynb与python源码及视频讲解)——开源DataWhale发布入门ChatGPT技术新手从0到1必备使用指南手册(四)

    目录 前言 最新ChatGPT GPT 4 自然语言理解NLU与句词分类技术详解 1 NLU基础 1 1 句子级别的分类 1 2 Token级别的分类 2 相关API 2 1 LMAS GPT API 2 2 ChatGPT Style 相
  • Linux中的计时函数

    2023年7月22日 周六上午 目录 预备知识 Linux系统函数sysconf 函数原型 参数介绍 使用方法 数据类型clock t times 函数原型 tms结构体 使用方法 clock 函数原型 使用方法 预备知识 Linux系统函
  • CRM之B/S和C/S架构的区别(下)

    B S 模式的缺点 1 响应速度不及C S 随着AJAX技术的发展 相比传统B S结构软件提升一倍速度 2 用户体验效果不是很理想 B S需要单独界面设计 厂商之间的界面也是千差万别 由于浏览器刷新机制 使用时有刷屏现象 好在AJAX技术解
  • 第二章:预备知识整理——2.2数据预处理

    数据预处理的课后习题为 2 2 5 练习 创建包含更多行和列的原始数据集 删除缺失值最多的列 将预处理后的数据集转换为张量格式 1 该问题的解决 感谢https blog csdn net qq 42363032 article detai
  • RabbitMQ 高级特性

    RabbitMQ 高级特性 生产者确认 confirm return confirm确认模式 return 退回模式 消费者确认 ACK 消费端限流 TTL过期时间 死信队列 延迟队列 保证幂等性 生产者代码实现 消费者代码实现 在使用 R
  • ANDROID项目重构之路:架构篇

    原创文章 转载请注明 转载自Keegan小钢 写于2015 06 05 去年10月底换到了新公司 做移动研发组的负责人 刚开始接手android项目时 发现该项目真的是一团糟 首先是其架构 是按功能模块进行划分的 本来按模块划分也挺好的 可
  • <cwchar> (wchar.h)

    英文原文地址 https cplusplus com reference cwchar 我会持续更新 我的翻译如下
  • 1. 开源协议

    开源 Open Source 一词 最早由Christine Peterson女士在1998年提出 它消除了人们对自由软件 Free Software 的理解歧义 软件的分类 商业软件 收费 元代码不公开 共享软件 免费使用 源代码不公开

随机推荐

  • 第三章 系统分析

    第三章 系统分析 本章将对微信小程序及签到应用市场进行需求分析 首先对系统进行功能需求分析 分析确定受众群 分析系统所要实现的功能 然后对系统进行数据需求分析 为了更好地完成系统项目 为项目的进一步开发工作做准备 了解具体数据 有利于软件的
  • Git 开发分支代码上线流程

    开发分支代码上线流程 开发分支 1 切换到master上 pull最新代码 git checkout mater git pull 2 打开发分支 git branch feature 自己taped的任务号 例如 git branch f
  • Linux中 的 " "(双引号) ' ' (单引号) ` `(反引号)

    1 基础篇 单引号 所见即所得 回将里面的内容原封不动的展示出来 双引号 和单引号类似 但里面的特殊符号会被解析 比如 反引号 都是特殊符号 反引号 反引号内的内容将优先执行 优先执行里面的命令 并将结果保留下来 无引号 和双引号类似 但此
  • sql server 查询某个字段是否有值 返回bool类型

    sql server 查询某个字段是否有值 返回bool类型 true 或 false SELECT ColumnCode CONVERT BIT CASE WHEN LEN ColumnCode gt 0 THEN 1 ELSE 0 EN
  • aop默认代理方式是什么

    jdk代理 可以通过proxy target class修改 proxy target class属性值决定是基于接口的还是基于类的代理被创建 如果proxy target class 属性值被设置为true 那么基于类的代理将起作用 这时
  • windTerm—Xshell、SercureCRT等替代品

    最常用的ssh工具 莫过于SercureCRT Xshell 但是这两个都收费 某些场景下不好使用 免费的有putty 但是这个太简陋了 用起来不舒服 finalShell eclecterm tabby 这三个很炫酷 但安装包和占用内存都
  • knn算法,利用numpy简单实现

    首先明确概念 回归 预测体重 预测房价 预测损失 结果是不容易确定的 分类 预测男女 预测是否能通过考试 结果是容易确定的 我的理解 回归针对连续的数据 分类针对离散的数据 回归连续 分类离散 classfication和regressio
  • 在vscode上快速打开php文件(小白手把手教小白,超级详细)

    第一次写博客 如有不足 欢迎指正 在vscode中打开php文件如下 准备工作 先下载小皮面板 记住下载路径 在其中打开Apache和MySQL 然后我们步入正题 1 首先打开vscode 在其中打开小皮面板所在文件夹 在WWW文件里随便建
  • STM32系列 (一)开发环境的搭建

    STM32简介 STM32是意法半导体 ST 推出一款32位的单片机 STM32具有超低的价格 超多的外设 丰富的型号 优异的实时性 极低的开发成本等优势 STM32凭借其产品线的多样化 极高的性价比 简单易用的库开发方式 迅速在众多32位
  • 一、SQL Server列名显示无效却可以运行问题解决?

    一 SQL Server列名显示无效却可以运行问题解决 在SQLServer中 当设计 修改 表结构之后 再用SQL语句时 会出现列名无效 然后却可以运行 如下图 出现这种情况的原因是SQL Server的intellisense 智能感知
  • C语言volatile关键字的作用

    volatile是易变的 不稳定的意思 volatile关键字和const一样是一种类型修饰符 用它修饰的变量表示可以被某些编译器未知的因素改变 比如操作系统 硬件或者其它线程等 遇到这个关键字声明的变量 编译器对访问该变量的代码就不再进行
  • TypeError: Cannot read properties of undefined (reading ‘licenseNum‘) at Proxy

    这是因为在定义的时候 我们只定义了一层的结构 比如 info 其实后端返回的是 info goods goodsName cheng 此时调用goodsName info goods goodsName 就会报错info goods und
  • 2021-12-24 vue项目兼容IE

    Vue 不支持 IE8 及以下版本 因为 Vue 使用了 IE8 无法模拟的 ECMAScript 5 特性 但对于 IE9 Vue 底层是支持 vue cli4脚手架搭建的前端项目 vue版本2 6 12 browserslist配置 指
  • System.Single

    浮点 类型 别名 float System Single double System Double decimal System Decimal 字符 类型 别名 允许的值 bool System Boolean true flase ch
  • 跟阿铭学Linux第六章答案,Linux磁盘管理

    hda一般是指IDE接口的硬盘 hda指第一块硬盘 hdb指第二块硬盘 等等 sda一般是指SATA接口的硬盘 sda指第一块硬盘 sdb指第二块硬盘 等等 du b显示的是文件的实际大小 du k显示的是文件占用的磁盘块的大小 所以磁盘块
  • 性能测试压力测试

    性能测试指标 并发用户数 TPS Transaction Per Second 每秒事务数 系统的性能由TPS决定 mysql 记一次接口压力测试与性能调优 Apache JMeter是Apache组织开发的基于Java的压力测试工具 用于
  • 最长公共子序列 蓝桥杯 1189

    题目描述 给定一个长度为n数组A和一个长度为m数组B 请你求出它们的最长公共子序列长度为多少 输入描述 输入第一行包含两个整数n m 第二行包含n个整数ai 第三行包含m个整数bi 1 lt n m lt 10 3 1 lt ai bi l
  • BearPi-HM Nano HarmonyOS 环境搭建

    BearPi HM Nano HarmonyOS 环境搭建 BearPi HM Nano 介绍 BearPi HM Nano开发板是一块专门为鸿蒙OS设计的鸿蒙OS开发板 板载高度集成的2 4GHz WLAN SoC芯片Hi3861 并板载
  • java mongodb 关闭连接_未释放资源的教训,开发MongoDB连接一定要关闭连接

    废不少工夫将数据存储 全部迁移至mongodb 未作大量改动则是主因 但遇到奇怪的现象 程序跑起不久后 mongodb即假死 另起客户端想登陆mongodb都不成 要重启mongodb服务器才好转 分析原因是mongodb的连接池满掉且不释
  • elasticsearch学习之cross_fields字段使用

    cross fields字段 在查询阶段解决信号冲突问题 问题 The cross fields type is particularly useful with structured documents where multiple fi