mongo 命令随机抽样

db.attachment_extract_status.aggregate( [ { $sample: { size: 500 }},{$match:{extract_status:1}} ] )

mongoTemplete随机抽样

@Test
public void test_sample()  {
    Aggregation aggregation =
            Aggregation.newAggregation(
                    Aggregation.match(Criteria.where("extract_status").is(1)),
 Aggregation.sample(1000));
 AggregationResults<JSONObject> outputTypeCount =
            mongoTemplate.aggregate(aggregation, "attachment_extract_status", JSONObject.class);
 for (Iterator<JSONObject> iterator = outputTypeCount.iterator(); iterator.hasNext(); ) {
        System.out.println(iterator.next().getLong("content_id"));
 }
}

微尘
0 声望0 粉丝