0
ArrayList<String> labels = (ArrayList) payload.get("labels");
Aggregation aggregation = newAggregation(
match(Criteria.where("user_id").is(id).and("page_id").is(pageId).and("labels").in(labels)),
sort(Sort.Direction.DESC, "meta_data.user_data.time"),
group(Fields.fields().and("first_name", "$meta_data.user_data.first_name").and("last_name", "$meta_data.user_data.last_name").and("profile_pic", "$meta_data.user_data.profile_pic").and("user_id", "$user_id").and("labels", "$labels").and("access_times","$meta_data.access_times"))
);
AggregationResults<UsersMongoResult> groupResults = mongoTemplate.aggregate(aggregation, "chatuser_log", UsersMongoResult.class);
於文件
標籤陣列是這樣的labels: ["123", "456"]
檢查陣列包含元素的MongoDB
當ArrayList的標籤= [ 「123」]結果匹配 但當ArrayList的標籤= [ 「123」, 「789」]它也符合該文件。
如何克服這個問題?