SELECT * FROM device_monitor_attr_his where deviceID=27143 AND monKey=107 AND createTime >= '2022-01-01 00:00:00' AND createTime <= '2022-01-02 00:00:00' order by createTime desc limit 0 , 10;用elasticesesarch怎么写?
时间: 2024-03-05 10:54:56 浏览: 53
ansible-filter-get_attr:Ansible过滤器可在字典中的键和值中进行变量替换
你可以使用Elasticsearch的查询DSL语言来转换这个SQL查询语句。一个等效的Elasticsearch查询应该如下所示:
```
GET device_monitor_attr_his/_search
{
"query": {
"bool": {
"must": [
{"match": {"deviceID": "27143"}},
{"match": {"monKey": "107"}},
{"range": {"createTime": {"gte": "2022-01-01 00:00:00", "lte": "2022-01-02 00:00:00"}}}
]
}
},
"sort": [
{"createTime": {"order": "desc"}}
],
"size": 10,
"from": 0
}
```
这个查询使用bool查询来组合三个条件:设备ID为27143,监控键为107,创建时间在2022年1月1日到2日之间。之后,按照创建时间降序排序,然后返回从0开始的10条记录。
阅读全文