--- title: "样本至少需要2个查询才有效 – 如何解决此Elasticsearch异常" date: 2026-02-12 lastmod: 2026-02-12 description: "当Elasticsearch的Rank Evaluation API使用少于两个查询时会出现此错误。Rank Evaluation API至少需要两个查询来比较结果并进行排名。" tags: ["Elasticsearch", "Rank Evaluation API", "查询错误", "解析异常"] summary: " 版本: 8.6-8.9 简而言之,当Elasticsearch的Rank Evaluation API使用少于两个查询时会出现此错误。Rank Evaluation API至少需要两个查询来比较它们的结果并进行排名。要解决此问题,请确保在使用Rank Evaluation API时至少提供两个查询。如果您是动态生成查询,请添加检查以确保至少生成两个查询。 日志上下文 # 日志"A sample requires a minimum of 2 queries; found [{}]“的类名是 LogicalPlanBuilder.java。我们从Elasticsearch源代码中提取了以下内容,供那些需要深入了解上下文的人参考: if (queries.size() < 2) { throw new ParsingException(source; "A sample requires a minimum of 2 queries; found [{}]"; queries.size()); } if (hasMissingJoinKeys) { throw new ParsingException(missingJoinKeysSource; "A sample must have at least one join key; found none"); } " --- > **版本:** 8.6-8.9 简而言之,当Elasticsearch的Rank Evaluation API使用少于两个查询时会出现此错误。Rank Evaluation API至少需要两个查询来比较它们的结果并进行排名。要解决此问题,请确保在使用Rank Evaluation API时至少提供两个查询。如果您是动态生成查询,请添加检查以确保至少生成两个查询。 ## 日志上下文 日志"A sample requires a minimum of 2 queries; found [{}]"的类名是[LogicalPlanBuilder.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从Elasticsearch源代码中提取了以下内容,供那些需要深入了解上下文的人参考: ```java if (queries.size() < 2) { throw new ParsingException(source; "A sample requires a minimum of 2 queries; found [{}]"; queries.size()); } if (hasMissingJoinKeys) { throw new ParsingException(missingJoinKeysSource; "A sample must have at least one join key; found none"); } ```