gpt4 book ai didi

full-text-search - msearch 不能使用 bool must

转载 作者:行者123 更新时间:2023-12-02 22:20:55 25 4
gpt4 key购买 nike

Elasticsearch 版本 - .90.1

以下工作完美。

cat names
{"index":"events","type":"news"}
{"query":{"term":{"Type":"MarketEvent"}}}
{"query":{"term":{"Type":"MarketEvent"}}}

curl -XGET 'http://localhost:9200/_msearch' --data-binary @names

以下也有效
{"index":"events","type":"news"}
{"query":{"bool":{"must":[{"query_string":{"query":"*","fields":["Events.Event"],"default_operator":"AND"}},{"term":{"Type":"MarketEvent"}}]}}}

但是超过 1 个 bool 的查询不起作用 -
cat names
{"index":"events","type":"news"}
{"query":{"bool":{"must":[{"query_string":{"query":"*","fields":["Events.Event"],"default_operator":"AND"}},{"term":{"Type":"MarketEvent"}}]}}}
{"query":{"bool":{"must":[{"query_string":{"query":"*","fields":["Events.Event"],"default_operator":"AND"}},{"term":{"Type":"MarketEvent"}}]}}}

curl -XGET 'http://localhost:9200/_msearch' --data-binary @names
{"error":"must doesn't support arrays"}

在日志中没有看到任何日志(也不是在 Debug模式下)
这是一个错误吗?

最佳答案

_msearch查询应具有以下格式:

header\n
body\n
header\n
body\n

在第一个和最后一个查询中,缺少第二个 header 。仅由于解析 header 的方式,不会为第一个查询生成错误。要使此查询起作用 names文件应该改成
{"index":"events","type":"news"}
{"query":{"bool":{"must":[{"query_string":{"query":"*","fields":["Events.Event"],"default_operator":"AND"}},{"term":{"Type":"MarketEvent"}}]}}}
{"index":"events","type":"news"}
{"query":{"bool":{"must":[{"query_string":{"query":"*","fields":["Events.Event"],"default_operator":"AND"}},{"term":{"Type":"MarketEvent"}}]}}}

关于full-text-search - msearch 不能使用 bool must,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16995294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com