--- title: "多匹配查询未指定文本 - 如何解决此 Elasticsearch 异常" date: 2026-03-25 lastmod: 2026-03-25 description: "当执行 multi_match 查询时未指定要匹配的文本,会导致此错误。本文介绍如何解决这个 Elasticsearch 异常。" tags: ["多匹配查询", "查询异常", "ParsingException"] summary: "版本: 6.8-8.9 简而言之,当执行 multi_match 查询时未指定任何要匹配的文本,就会发生此错误。这是 Elasticsearch 中此类查询的必需参数。要解决此问题,你应该确保在 multi_match 查询中提供 text 参数。或者,如果只需要搜索一个字段,可以切换到 match 查询。此外,检查应用程序代码,确保它不会为 multi_match 查询中的 text 参数发送空值或 null 值。 日志上下文 # 日志"No text specified for multi_match query"的类名是 MultiMatchQueryBuilder.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入理解上下文的人参考: ); } } if (value == null) { throw new ParsingException(parser.getTokenLocation(); "No text specified for multi_match query"); } if (fuzziness != null && (type == Type.CROSS_FIELDS || type == Type.PHRASE || type == Type.PHRASE_PREFIX)) { throw new ParsingException( parser." --- > **版本:** 6.8-8.9 简而言之,当执行 multi_match 查询时未指定任何要匹配的文本,就会发生此错误。这是 Elasticsearch 中此类查询的必需参数。要解决此问题,你应该确保在 multi_match 查询中提供 text 参数。或者,如果只需要搜索一个字段,可以切换到 match 查询。此外,检查应用程序代码,确保它不会为 multi_match 查询中的 text 参数发送空值或 null 值。 日志上下文 ----------- 日志"No text specified for multi\_match query"的类名是 [MultiMatchQueryBuilder.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入理解上下文的人参考: ```java ); } } if (value == null) { throw new ParsingException(parser.getTokenLocation(); "No text specified for multi_match query"); } if (fuzziness != null && (type == Type.CROSS_FIELDS || type == Type.PHRASE || type == Type.PHRASE_PREFIX)) { throw new ParsingException( parser.getTokenLocation(); ```