MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tính năng tổng hợp mới với trình điều khiển Mongo 3.2, sử dụng Java

Chạy đường dẫn tổng hợp sau đây sẽ cung cấp cho bạn kết quả cần thiết

pipeline = [
    {
        "$match": {
            "_id": employeeId
        }
    },
    {
        "$lookup": {
            "from": "company", 
            "localField": "companyId",
            "foreignField": "_id",
            "as": "company"
        }
    },
    {
        "$project": {
            "name": 1,
            "lastName": 1,
            "companyId": 1,
            "companyName": "$company.companyName"
        }
    }
];
db.employee.aggregate(pipeline);

Triển khai thử nghiệm Java

public class JavaAggregation {
    public static void main(String args[]) throws UnknownHostException {

        MongoClient mongo = new MongoClient();
        DB db = mongo.getDB("test");

        DBCollection coll = db.getCollection("employee");

        // create the pipeline operations, first with the $match
        DBObject match = new BasicDBObject("$match",
            new BasicDBObject("_id", employeeId)
        );

        // build the $lookup operations
        DBObject lookupFields = new BasicDBObject("from", "company");
        lookupFields.put("localField", "companyId");
        lookupFields.put("foreignField", "_id");
        lookupFields.put("as", "company");      
        DBObject lookup = new BasicDBObject("$lookup", lookupFields);

        // build the $project operations
        DBObject projectFields = new BasicDBObject("name", 1);
        projectFields.put("lastName", 1);
        projectFields.put("companyId", 1);
        projectFields.put("companyName", "$company.companyName");       
        DBObject project = new BasicDBObject("$project", projectFields);

        List<DBObject> pipeline = Arrays.asList(match, lookup, project);

        AggregationOutput output = coll.aggregate(pipeline);

        for (DBObject result : output.results()) {
            System.out.println(result);
        }
    }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Số lượng cơ sở dữ liệu tối đa được MongoDB hỗ trợ

  2. Xóa tài liệu khỏi mongoDB

  3. Lưu trữ Enums dưới dạng chuỗi trong MongoDB

  4. Spring Data MongoDB cách ấn định thời gian hết hạn theo chương trình

  5. Cách chọn các tài liệu con với MongoDB