可用版本:Dev (3.21) | 最新 (3.20) | 3.19

隐式路径关联

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

FROM 子句 中放置路径表达式的一个特殊情况是隐式路径关联,其中路径建立与外部查询的关联,而不是与来自 FROM 子句 的先前表的连接。 这种相关子查询的情况非常强大,例如,用于计算每个作者的书籍数量

SELECT
  AUTHOR.ID, (
    SELECT COUNT(*) FROM BOOK
    WHERE BOOK.AUTHOR_ID = AUTHOR.ID
  )
FROM AUTHOR
// Count the number of books per author
create.select(
          AUTHOR.ID,
          field(selectCount().from(AUTHOR.book())))
      .from(AUTHOR)
      .fetch();

或者作为简化 MULTISET 子查询 的一种方式

// Get all books by author
create.select(
          AUTHOR.ID,
          multiset(selectFrom(AUTHOR.book())))
      .from(AUTHOR)
      .fetch();

反馈

您对此页面有任何反馈吗? 我们很乐意听到您的意见!

The jOOQ Logo