如何使用jooq编写联接提取查询?

时间:2019-03-29 18:56:41

标签: java jooq

任何人都知道如何使用jooq编写联接获取查询吗? 我的代码:

int oid=5;
Select<?> selectQuery = DSL_CONTEXT.select().from(TABLE_A)
      .join(TABLE_B).on(TABLE_A.PID.eq(TABLE_B.ID))
        .where(TABLE_A.OID.eq(oid))
        .orderBy(UPDATED.asc(), ID.asc())
        .seekAfter(val(offsetDateTime), val(id))
        .limit(50);

这将导致:select * from table_a join table_b个查询类型。如何使其创建以下类型的查询:

select * from table_a join fetch table b ...

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

使用jOOQ 3.11获得的最接近的即用功能是使用ResultQuery.fetchGroups()。根据您的查询,致电:

Map<TableARecord, Result<TableBRecord>> result = select.fetchGroups(TABLE_A, TABLE_B);