1、query - must - match_phrase ,根据字段值完全匹配
foreach ($condition as $key => $value) {
$query['bool']['must'][]['match_phrase'] = array(
$key => $value
);
}
2、query - must - exist,对结果要求
foreach ($mustExist as $value) {
$query['bool']['must'][]['exists'] = array(
'field' => $value
);
}
3、filter - range,根据时间范围筛选
$query['bool']['filter'][]['range']['logTime'] = array(
'gte' => $timeRange['startTime'],
'lte' => $timeRange['endTime']
);
4、filter - terms, 根据字段的值进行过滤
$query['bool']['filter'][]['terms'] = $filterFields;
官方文档:es-PHP-query-filter