我想用AND条件搜索多个字段。我尝试了很多方法,但我无法生成结果。
下面是我的代码。
"query" =>[
"multi_match" => [
"fields" => ["prod_name", "prod_seo_name"],
"type" => "phrase_prefix",
"query" => $query
],
"bool" => [
"must" => [
"term" => [ "cat_type_id" => 1 ],
],
],
],
我想使用产品名称进行搜索, cat_type_id 1 。
我也试过了。
"query" =>[
"multi_match" => [
"fields" => ["prod_name", "prod_seo_name"],
"type" => "phrase_prefix",
"query" => $query
],
"filter" => [
"term"=> ["cat_type_id"=>1]
]
任何帮助或参考都会很棒。
答案 0 :(得分:2)
正确的方法是这样的:
"query" => [
"bool" => [
"must" => [
[
"multi_match" => [
"fields" => ["prod_name", "prod_seo_name"],
"type" => "phrase_prefix",
"query" => $query
]
],
[
"term"=> ["cat_type_id"=>1]
]
]
]
]