示例-Select * from table1 where id not in ('a','b','c')
。
我正在使用这个:
$searchParams = array();
$searchParams['index'] = 'articles';
$searchParams['type'] = 'staging';
$searchParams['size']= $size;
$searchParams['body']['filter']['bool']['must_not']['term']['_id'] = $filter;
$filter
变量具有此['a','b','c']
格式的一些ID但是它没有返回正确的结果。有什么建议吗?
编辑:-
我需要在 flex 搜索中基于_id列过滤结果
最佳答案
我认为应该是terms
而不是term
:
$searchParams['body']['filter']['bool']['must_not']['terms']['_id'] = $filter;
要么
$searchParams['body']['filter']['bool']['must_not'][]['terms']['_id'] = $filter;
看terms和bool queries。但是我不是这方面的专家。