送菜上门网站app如何做/石家庄自动seo

送菜上门网站app如何做,石家庄自动seo,网站建设推广有用吗,网站建设 amp 找VX cp5173在 Elasticsearch 中,实现多字段查询的常见方式有以下几种,每种方式适用于不同的场景: --- ### 1. **multi_match 查询** - **用途**:在多个字段中执行同一查询,支持多种匹配策略。 - **关键参数**&#xff1a…

在 Elasticsearch 中,实现多字段查询的常见方式有以下几种,每种方式适用于不同的场景:

---

### 1. **`multi_match` 查询**
   - **用途**:在多个字段中执行同一查询,支持多种匹配策略。
   - **关键参数**:
     - `type`:指定匹配策略(如 `best_fields`, `most_fields`, `cross_fields`, `phrase`, `phrase_prefix`)。
     - `fields`:指定查询的字段列表(支持通配符,如 `title^3` 表示字段权重提升)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "multi_match": {
           "query": "elasticsearch",
           "fields": ["title", "content^2", "tags"],
           "type": "best_fields"
         }
       }
     }
     ```

---

### 2. **`bool` 查询组合多个子句**
   - **用途**:通过 `bool` 查询的 `should`, `must`, `filter` 等子句组合多个字段的条件。
   - **场景**:需要更复杂的逻辑(如部分字段必须匹配,部分字段可选匹配)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "bool": {
           "should": [
             { "match": { "title": "elasticsearch" } },
             { "match": { "description": "elasticsearch" } }
           ],
           "minimum_should_match": 1
         }
       }
     }
     ```

---

### 3. **`cross_fields` 类型**
   - **用途**:将查询词拆分后,分散到多个字段中匹配(如处理姓名分散在 `first_name` 和 `last_name` 的场景)。
   - **特点**:通过 `operator` 和 `analyzer` 统一控制字段行为。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "multi_match": {
           "query": "John Smith",
           "fields": ["first_name", "last_name"],
           "type": "cross_fields",
           "operator": "and"
         }
       }
     }
     ```

---

### 4. **`query_string` 或 `simple_query_string`**
   - **用途**:使用 Lucene 语法直接指定多字段查询,适合熟悉搜索语法的用户。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "query_string": {
           "query": "(title:elasticsearch) OR (content:search)",
           "default_field": "content"
         }
       }
     }
     ```

---

### 5. **`copy_to` 字段合并**
   - **用途**:通过 `copy_to` 将多个字段值复制到一个新字段,简化单字段查询。
   - **步骤**:
     1. 定义映射时指定 `copy_to`:
       ```json
       "mappings": {
         "properties": {
           "title": { "type": "text", "copy_to": "full_text" },
           "content": { "type": "text", "copy_to": "full_text" }
         }
       }
       ```
     2. 查询合并后的字段:
       ```json
       GET /_search
       {
         "query": {
           "match": { "full_text": "elasticsearch" }
         }
       }
       ```

---

### 6. **`dis_max` 查询**
   - **用途**:在多个查询中取最佳匹配的评分,忽略其他字段的评分(避免评分累加)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "dis_max": {
           "queries": [
             { "match": { "title": "elasticsearch" } },
             { "match": { "content": "elasticsearch" } }
           ],
           "tie_breaker": 0.3
         }
       }
     }
     ```

---

### 7. **`nested` 查询**
   - **用途**:针对嵌套对象(nested type)中的多个字段进行联合查询。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "nested": {
           "path": "comments",
           "query": {
             "bool": {
               "must": [
                 { "match": { "comments.author": "John" } },
                 { "match": { "comments.text": "elasticsearch" } }
               ]
             }
           }
         }
       }
     }
     ```

---

### **总结**
| 方法                | 适用场景                           |
|---------------------|----------------------------------|
| `multi_match`       | 快速实现多字段查询,支持多种匹配策略。    |
| `bool` + `should`   | 需要复杂逻辑组合时使用。              |
| `cross_fields`      | 字段间内容互补(如姓名、地址拆分存储)。  |
| `copy_to`           | 预定义合并字段,简化后续查询。         |
| `dis_max`           | 避免低相关性字段拉低总体评分。         |
| `nested`            | 嵌套对象内的多字段联合查询。           |

根据数据结构和查询需求(如是否需要字段权重、是否处理嵌套对象等),选择最合适的方式。

在 Elasticsearch 8.17 版本中,支持的多字段查询方式非常丰富,涵盖了从简单到复杂的多种场景。以下是 Elasticsearch 8.17 版本中支持的主要多字段查询方式及其特点:

---

### 1. **`multi_match` 查询**
   - **用途**:在多个字段中执行同一查询,支持多种匹配策略。
   - **关键参数**:
     - `type`:指定匹配策略(如 `best_fields`, `most_fields`, `cross_fields`, `phrase`, `phrase_prefix`)。
     - `fields`:指定查询的字段列表(支持通配符,如 `title^3` 表示字段权重提升)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "multi_match": {
           "query": "elasticsearch",
           "fields": ["title", "content^2", "tags"],
           "type": "best_fields"
         }
       }
     }
     ```

---

### 2. **`bool` 查询组合多个子句**
   - **用途**:通过 `bool` 查询的 `should`, `must`, `filter` 等子句组合多个字段的条件。
   - **场景**:需要更复杂的逻辑(如部分字段必须匹配,部分字段可选匹配)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "bool": {
           "should": [
             { "match": { "title": "elasticsearch" } },
             { "match": { "description": "elasticsearch" } }
           ],
           "minimum_should_match": 1
         }
       }
     }
     ```

---

### 3. **`cross_fields` 类型**
   - **用途**:将查询词拆分后,分散到多个字段中匹配(如处理姓名分散在 `first_name` 和 `last_name` 的场景)。
   - **特点**:通过 `operator` 和 `analyzer` 统一控制字段行为。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "multi_match": {
           "query": "John Smith",
           "fields": ["first_name", "last_name"],
           "type": "cross_fields",
           "operator": "and"
         }
       }
     }
     ```

---

### 4. **`query_string` 或 `simple_query_string`**
   - **用途**:使用 Lucene 语法直接指定多字段查询,适合熟悉搜索语法的用户。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "query_string": {
           "query": "(title:elasticsearch) OR (content:search)",
           "default_field": "content"
         }
       }
     }
     ```

---

### 5. **`copy_to` 字段合并**
   - **用途**:通过 `copy_to` 将多个字段值复制到一个新字段,简化单字段查询。
   - **步骤**:
     1. 定义映射时指定 `copy_to`:
       ```json
       "mappings": {
         "properties": {
           "title": { "type": "text", "copy_to": "full_text" },
           "content": { "type": "text", "copy_to": "full_text" }
         }
       }
       ```
     2. 查询合并后的字段:
       ```json
       GET /_search
       {
         "query": {
           "match": { "full_text": "elasticsearch" }
         }
       }
       ```

---

### 6. **`dis_max` 查询**
   - **用途**:在多个查询中取最佳匹配的评分,忽略其他字段的评分(避免评分累加)。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "dis_max": {
           "queries": [
             { "match": { "title": "elasticsearch" } },
             { "match": { "content": "elasticsearch" } }
           ],
           "tie_breaker": 0.3
         }
       }
     }
     ```

---

### 7. **`nested` 查询**
   - **用途**:针对嵌套对象(nested type)中的多个字段进行联合查询。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "nested": {
           "path": "comments",
           "query": {
             "bool": {
               "must": [
                 { "match": { "comments.author": "John" } },
                 { "match": { "comments.text": "elasticsearch" } }
               ]
             }
           }
         }
       }
     }
     ```

---

### 8. **`combined_fields` 查询(Elasticsearch 7.11+)**
   - **用途**:在多个字段中联合搜索一个完整的短语或关键词,支持字段权重和统一的文本分析。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "combined_fields": {
           "query": "distributed search engine",
           "fields": ["title", "content", "description"],
           "operator": "and"
         }
       }
     }
     ```

---

### 9. **`span_near` 和 `span_multi` 查询**
   - **用途**:用于复杂的跨度查询(span queries),支持多字段的邻近匹配。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "span_near": {
           "clauses": [
             { "span_term": { "title": "elasticsearch" } },
             { "span_term": { "content": "search" } }
           ],
           "slop": 5,
           "in_order": false
         }
       }
     }
     ```

---

### 10. **`script_score` 查询**
   - **用途**:通过脚本自定义评分逻辑,支持多字段联合评分。
   - **示例**:
     ```json
     GET /_search
     {
       "query": {
         "script_score": {
           "query": {
             "bool": {
               "should": [
                 { "match": { "title": "elasticsearch" } },
                 { "match": { "content": "elasticsearch" } }
               ]
             }
           },
           "script": {
             "source": "doc['title'].value.length() + doc['content'].value.length()"
           }
         }
       }
     }
     ```

---

### **总结**
| 方法                | 适用场景                           |
|---------------------|----------------------------------|
| `multi_match`       | 快速实现多字段查询,支持多种匹配策略。    |
| `bool` + `should`   | 需要复杂逻辑组合时使用。              |
| `cross_fields`      | 字段间内容互补(如姓名、地址拆分存储)。  |
| `copy_to`           | 预定义合并字段,简化后续查询。         |
| `dis_max`           | 避免低相关性字段拉低总体评分。         |
| `nested`            | 嵌套对象内的多字段联合查询。           |
| `combined_fields`   | 多字段联合搜索短语,支持统一分析器。     |
| `span_near`         | 复杂的邻近匹配查询。                 |
| `script_score`      | 自定义评分逻辑,支持多字段联合评分。     |

根据数据结构和查询需求(如是否需要字段权重、是否处理嵌套对象等),选择最合适的方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/895528.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

达梦:AWR 生成

目录标题 AWR 性能诊断与报告生成1. 检查 AWR 系统状态2. 查看数据库中的所有表空间3. 查看现有的 AWR 快照4. 设置 AWR 快照的时间间隔5. 创建 AWR 快照6. 查看最新的 AWR 快照7. 生成 AWR HTML 报告8. 将 AWR 报告保存到指定文件链接总结 自动工作集负载信息库 AWR 报告解析指…

【Map vs Set】:Java数据存储的“双子星”对决

个人主页:♡喜欢做梦 欢迎 👍点赞 ➕关注 ❤️收藏 💬评论 目录 🍰一、搜索 🍮1.概念 🍮2.模型 🍰二、Map 🍨1.什么是Map? 🍨2.Map的实例化 &…

【C语言 】C语言 桌游开发数字竞拍(源码)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 【C语言 】C语言 桌游开发数字竞拍(源码…

Reinforcement Learning Heats Up 强化学习持续升温

Reinforcement Learning Heats Up 强化学习持续升温 核心观点:强化学习正成为构建具有高级推理能力大语言模型(LLMs)的重要途径。 最新进展 模型示例:近期出现了如DeepSeek - R1及其变体(DeepSeek - R1 - Zero&#xf…

Whisper+T5-translate实现python实时语音翻译

1.首先下载模型,加载模型 import torch import numpy as np import webrtcvad import pyaudio import queue import threading from datetime import datetime from faster_whisper import WhisperModel from transformers import AutoTokenizer, AutoModelForSeq2…

湖仓分析|浙江霖梓基于 Doris + Paimon 打造实时/离线一体化湖仓架构

导读:浙江霖梓早期使用 CDH 产品套件搭建了大数据系统,面临业务逻辑冗余、查询效率低下等问题,基于 Apache Doris 进行整体架构与表结构的重构,并基于湖仓一体和查询加速展开深度探索与实践,打造了 Doris Paimon 的实…

Jmeter压测怎么控制TPS

压测固定TPS的接口 有些任务需要我们控制接口的TPS,例如每秒请求一次。 TPS定时器 然后1个并发持续运行 压测结果 需要注意TPS在1.0/s左右,有时可能是1.2、1.3,定时器会自动调整压力,让TPS保持在1.0左右。

信呼OA办公系统sql注入漏洞分析

漏洞描述 信呼OA办公系统uploadAction存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。 环境搭建 源码下载地址:https://github.com/rainrocka/xinhu 下载后解压到本地网站根目录下,配置好数据库,然后安装即可 默认密…

一文深入了解DeepSeek-R1:模型架构

本文深入探讨了 DeepSeek-R1 模型架构。让我们从输入到输出追踪 DeepSeek-R1 模型,以找到架构中的新发展和关键部分。DeepSeek-R1 基于 DeepSeek-V3-Base 模型架构。本文旨在涵盖其设计的所有重要方面。 📝 1. 输入上下文长度 DeepSeek-R1的输入上下文长…

算法兵法全略(译文)

目录 始计篇 谋攻篇 军形篇 兵势篇 虚实篇 军争篇 九变篇 行军篇 地形篇 九地篇 火攻篇 用间篇 始计篇 算法,在当今时代,犹如国家关键的战略武器,也是处理各类事务的核心枢纽。算法的世界神秘且变化万千,不够贤能聪慧…

开关电源实战(一)宽范围DC降压模块MP4560

系列文章目录 文章目录 系列文章目录MP4560MP4560 3.8V 至 55V 的宽输入范围可满足各种降压应用 MOSFET只有250mΩ 输出可调0.8V-52V SW:需要低VF肖特基二极管接地,而且要靠近引脚,高压侧开关的输出。 EN:输入使能,拉低到阈值以下关闭芯片,拉高或浮空启动 COMP:Compens…

微软AutoGen高级功能——Magentic-One

介绍 大家好,博主又来给大家分享知识了,这次给大家分享的内容是微软AutoGen框架的高级功能Magentic-One。那么它是用来做什么的或它又是什么功能呢,我们直接进入正题。 Magentic-One Magnetic-One是一个通用型多智能体系统,用于…

DeepSeek是如何通过“蒸馏”技术打造自己的AI模型

1 引言: 最近,外媒对中国公司——DeepSeek进行了猛烈抨击,指控其采用了所谓的“蒸馏”(Distillation)技术,涉嫌抄袭甚至作弊。那么,什么是“蒸馏”技术? 在人工智能领域,…

【广州大学主办,发表有保障 | IEEE出版,稳定EI检索,往届见刊后快至1个月检索】第二届电气技术与自动化工程国际学术会议 (ETAE 2025)

第二届电气技术与自动化工程国际学术会议 (ETAE 2025) The 2nd International Conference on Electrical Technology and Automation Engineering 大会官网:http://www.icetae.com/【更多详情】 会议时间:2025年4月25-27日 会议地点&#xff1a…

伯克利 CS61A 课堂笔记 08 —— Strings and Dictionaries

本系列为加州伯克利大学著名 Python 基础课程 CS61A 的课堂笔记整理,全英文内容,文末附词汇解释。 目录 01 Strings 字符串 Ⅰ Strings are An Abstraction. Ⅱ Strings Literals have Three Forms Ⅲ String are Sequences 02 Dictionaries 字典 …

基于 GEE 计算研究区年均地表温度数据

目录 1 代码解析 2 完整代码 3 运行结果 1 代码解析 (1)定义研究区: // 研究区的范围需要自己提前上传 var dataset table;// 将研究区显示在中心,后面的数字为缩放等级,范围从1 - 24 Map.centerObject(dataset,…

日常知识点之遗留问题梳理(定时器/时间轮定时器)

1:简单基础 定时器的核心知识点,对我来说就是获取当前时间和设置回调函数。 简单练习: ​ c语言通过gettimeofday 获取当前时间并进行处理 ​ 回调函数的定义(函数参数有必要适当存储) typedef void(Timerfunc)(vo…

Python + WhisperX:解锁语音识别的高效新姿势

大家好,我是烤鸭: 最近在尝试做视频的质量分析,打算利用asr针对声音判断是否有人声,以及识别出来的文本进行进一步操作。asr看了几个开源的,最终选择了openai的whisper,后来发现性能不行,又换了…

mapbox 从入门到精通 - 目录

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀总目录1.1 ☘️ mapbox基础1.2 ☘️…

sqlilabs--小实验

一、先盲注判断 ?id1 and sleep(2)-- 如果发现页面存在注点,使用时间盲注脚本进行注入 import requestsdef inject_database(url):name for i in range(1, 20): # 假设数据库名称长度不超过20low 48 # 0high 122 # zmiddle (low high) // 2while low &l…