我有两个具有 FK 关系的表。我想要的相当于:
select A.*, B.*
from A
join B
on B.A_ID = A.ID
我如何在jOOQ中有效地做到这一点?最后,我需要每个结果行的一个实例ARecord和一个。BRecord
像这样
Result<Record> result =
create.select()
.from(A)
.join(B).on(B.A_ID.equal(A.ID))
.fetch();
这将获取A.*, B.*(或更准确地说,A.A1, A.A2, ..., A.AN, B.B1, ...)。现在为了转化result为使用方法:ARecordBRecordResult.into(Table)
ARecord a = result.into(A);
BRecord b = result.into(B);
请注意,这有已知的缺陷。例如,如果A.X是一个具有相应字段B.X(相同字段名称)的字段,A.X则将保存B.X' 值。我为此注册了一个错误报告:#1802