来自SQL语句的Elasticsearch DSL查询

sun*_*ndq 2 elasticsearch

我是Elasticsearch的新手.我不认为我完全理解查询和过滤器的概念.在我的情况下,我只想使用过滤器,因为我不想使用像评分这样的高级功能.

如何将以下SQL语句转换为elasticsearch查询?

select * from tablename where (name="d" and time>1231312) or (name="ds" and time>21)
Run Code Online (Sandbox Code Playgroud)

sun*_*ndq 6

{
    "filter" : {
        "or":[
            { "and" : [
                    {"range": {"time": {"gt": 1231312}}},
                {"term" : {"name":"d"}}
            ]},

            { "and" : [
                    {"range": {"time": {"gt": 21}}},
                {"term" : {"name":"ds"}}
            ]}

        ]

    }
}
Run Code Online (Sandbox Code Playgroud)