0
私はelasticsearch(質問にelasticsearch-phpを使用)を使用する方法を学ぼうとしています。 $ valが検索語であるelasticsearch:単語の一部を検索する
$query = [
'filtered' => [
'query' => [
'bool' => [
'should' => [
['match' => [
'name' => [
'query' => $val,
'boost' => 7
]
]],
['match' => [
'category' => [
'query' => $val,
'boost' => 5
]
]],
],
]
]
]
];
:
['id' => 1, 'name' => 'butter', 'category' => 'food'],
['id' => 2,'name' => 'buttercup', 'category' => 'food'],
['id' => 3,'name' => 'something else', 'category' => 'butter']
は今、私はこのようになり、検索クエリを作成しました:私はこのような何かを見て、いくつかのデータを、挿入しました。これはうまく動作します。唯一の問題です:「バター」を検索すると、検索エンジンが正確な単語と一致するように見えるため、1と3のIDは見つかりましたが、2は見つかりませんでした。 "単語の中で"検索する方法はありますか、またはmysqlの用語でWHERE name LIKE '%val%'のようなことをする方法はありますか?
ありがとうございます!特にこれを行う正しい方法を教えてください。 – Chi
@Chiこれ以上の情報は必要ですか? – Val