ElasticSearch:使用查询字符串进行 IN 查询
ElasticSearch: Using query string for IN queries
我正在尝试做一些类似于 SQL 中的 IN 语句的事情,例如
SELECT * FROM es_index WHERE in_col in ('v1', 'v2', 'v3') AND match_col='v4';
我需要在 ElasticSearch 中使用 查询字符串 (这是必须的)来执行此操作,因为只有此功能对我公开,所以我尝试了
// GET /_search
{
"query": {
"query_string": {
"query": "(in_col: [v1, v2, v3]) AND (match_col:v4)"
}
}
}
但是它给了我一个解析错误
Cannot parse 'in_col: [v1, v2, v3]': Encountered \" \"]\" \"] \"\" at line x, column y.\nWas expecting:\n \"TO\" ...\n
有什么想法吗?
IN 基本上是一个 OR 条件,所以你可以这样做
{
"query": {
"query_string": {
"query": "in_col:(v1 OR v2 OR v3) AND match_col:v4"
}
}
}
我正在尝试做一些类似于 SQL 中的 IN 语句的事情,例如
SELECT * FROM es_index WHERE in_col in ('v1', 'v2', 'v3') AND match_col='v4';
我需要在 ElasticSearch 中使用 查询字符串 (这是必须的)来执行此操作,因为只有此功能对我公开,所以我尝试了
// GET /_search
{
"query": {
"query_string": {
"query": "(in_col: [v1, v2, v3]) AND (match_col:v4)"
}
}
}
但是它给了我一个解析错误
Cannot parse 'in_col: [v1, v2, v3]': Encountered \" \"]\" \"] \"\" at line x, column y.\nWas expecting:\n \"TO\" ...\n
有什么想法吗?
IN 基本上是一个 OR 条件,所以你可以这样做
{
"query": {
"query_string": {
"query": "in_col:(v1 OR v2 OR v3) AND match_col:v4"
}
}
}