1
正しいクエリを作成するのに問題があります。Elasticsearch regexpクエリで結果が見つかりません
"ids" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
サンプルコンテンツは、次のようになります:
10,20,30
それはIDのリストだ私は、次のマッピングを持つフィールドを持つインデックス「ID」を持っています。今、私は複数の可能なIDを持つクエリを作りたいと私は論理和(OR)を作りたいので、私は正規表現を使用することにしました:
{
"query" : {
"bool" : {
"must" : [
{
"query_string" : {
"query" : "Test"
}
},
{
"regexp" : {
"ids" : {
"value" : "10031|20|10038",
"boost" : 1
}
}
}
]
}
},
"size" : 10,
"from" : 0
}
クエリが成功したが何もありませんで実行されます。私は3つの結果を期待しました。
文字列全体を一致させる必要があります。これらのコンマ区切りの値が単一の文字列だった場合、 '(10031 | 20 | 10038)(、(10031 | 20 | 10038))*'のようなものを使うことができますが、そうではありません。 –