可用版本: 开发版 (3.21) | 最新版 (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

Oracle提示

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

Oracle 使用注释风格的语法来实现提示,其中多行注释包含特殊的 + 标记,以将其与普通注释区分开来,例如 /*+HINT*/

例如,以下提示告诉优化器客户端将使用结果集中的所有行,而不是在获取几行后中止获取

SELECT /*+ALL_ROWS*/ FIRST_NAME, LAST_NAME
  FROM AUTHOR

这可以在 jOOQ 中使用 SELECT 语句中的 .hint() 子句来完成

create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
      .hint("/*+ALL_ROWS*/")
      .from(AUTHOR)
      .fetch();

请注意,您可以在 .hint() 子句中传递任何字符串,包括任何非提示注释(如果您希望使用此语法来标记您的查询)。 如果您使用该子句,则传递的字符串将始终放在 SELECT [DISTINCT] 关键字和实际投影列表之间。 这在其他数据库(例如 MySQL)中也可能很有用

SELECT SQL_CALC_FOUND_ROWS field1, field2
FROM table1

 
create.select(field1, field2)
      .hint("SQL_CALC_FOUND_ROWS")
      .from(table1)
      .fetch()

另请参阅 MySQL 中的 Oracle 风格提示,了解更多详细信息。

反馈

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

The jOOQ Logo