我是mongoDB的新手,我遇到一种情况,例如我有3个集合,需要将所有3个集合连接起来并返回一个集合列表数据。
Exa 表1集合
@Document(collection= "table1")
public class Table1Entity implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Field
private ObjectId id;
@Field
private String name;
//getter setter
}
@Document(collection= "table2")
public class Table2Entity implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Field
private ObjectId id;
@Field
private String table1Id;
@Field
private String table3Id;
@Field
private String name;
//getter setter
}
@Document(collection= "table3")
public class Table3Entity implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Field
private ObjectId id;
@Field
private String userId;
@Field
private String name;
//getter setter
}
所以我的userId = 1。
所以我需要检入table3
的{{1}}集合中,然后返回所有userId = 1
记录
像mysql
table1
那么我该如何在mongoTemplate中创建类似的查询
SELET t1.* from TABLE1 as t1 JOIN TABLE2 as t2 ON t1.id = t2.table1Id JOIN TABLE3 as t3 ON t2.table3Id = t3.id WHERE t3.userId = 1
请让我知道有人知道