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 风格提示,了解更多详细信息。
反馈
您对此页面有任何反馈吗? 我们很乐意听到您的反馈!