执行下面的语句时,结果记录只有表B的字段,但如果我用select(A.fields())替换select()。select(B.fields()),我得到的字段为A和B都是这种预期的行为吗?我会假设所有字段都像进行常规连接一样。
DSL.using(configuration())
.select()
.from(DSL.table("{0} partition (p2)", A))
.join(B)
.on(A.ID.eq(B.A_ID))
.where(A.ID.eq(uuid))
.fetchOne()
答案 0 :(得分:0)
这是jOOQ中的一个错误,原因是普通的SQL表与非纯SQL表混合在一起。 jOOQ应生成var isChromium = window.chrome,
winNav = window.navigator,
vendorName = winNav.vendor,
isOpera = winNav.userAgent.indexOf("OPR") > -1,
isIEedge = winNav.userAgent.indexOf("Edge") > -1,
isIOSChrome = winNav.userAgent.match("CriOS");
if (isIOSChrome) {
// is Google Chrome on IOS
} else if (
isChromium !== null &&
typeof isChromium !== "undefined" &&
vendorName === "Google Inc." &&
isOpera === false &&
isIEedge === false
) {
document.getElementById("content").style.display = "block";
$("body *:not(.info)").hide();
} else {
document.getElementById("content").style.display = "none";
}
查询(因为纯SQL表的列对于jOOQ是未知的)。相关问题是:
https://github.com/jOOQ/jOOQ/issues/7231
明确选择所有列(如您在问题中所提到的),例如通过:
Dim a As String = Microsoft.VisualBasic.right("I will be going to school in 2011!", 5)
MsgBox("the value is:" & a)
确保SELECT *
子句中的所有表都是纯SQL表:
.select(A.fields()).select(B.fields())