我有SQL查询:WHERE A = 1 AND B = 2 AND C REGEXP (eee|fff|ggg)
如何在elasticsearch中编写此查询?
最佳答案
未经测试,但您需要使用filter
和regexp
的 QUERY-DSL 这样的东西,
GET /_search
{
"size": 10,
"query": {
"filter" : {
"bool" : {
"must" : [
{ "term" : {"A" : 1}},
{ "term" : {"B" : 2}}
]
}
},
"regexp": {
"C": {
"value": "eee|fff|ggg"
}
}
}
}
或
GET /_search
{
"size": 10,
"query": {
"filter": {
"bool": {
"must": [
{
"term": {
"A": 1
}
},
{
"term": {
"B": 2
}
},
{
"regexp": {
"C": {
"value": "eee|fff|ggg"
}
}
}
]
}
}
}
}
关于regex - 如何在Elasticsearch中编写此查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62325290/