JFMT
指定联接这些列中的表时如何调整 VARCHAR 列数据的大小并相应缓冲数据。JFMT 提示覆盖由配置参数 JoinDefaultTupleFormat 设置的默认行为,可在数据库和会话级别进行设置。
有关详细信息,请参阅联接可变长度字符串数据。
语法
JOIN /*+JFMT(format-type)*/
参数
- format‑type
- 指定联接这些列中的表时如何设置 VARCHAR 列数据的格式并相应缓冲数据。设置为以下值之一:
-
f
(固定):使用联接列元数据将列数据的大小调整为固定长度,并相应地进行缓冲。 -
v
(变量):使用联接列数据的实际长度,因此每个联接的缓冲区大小不同。
例如:
SELECT /*+SYNTACTIC_JOIN*/ s.store_region, SUM(e.vacation_days) TotalVacationDays FROM public.employee_dimension e JOIN /*+JFMT(f)*/ store.store_dimension s ON s.store_region=e.employee_region GROUP BY s.store_region ORDER BY TotalVacationDays;
-
要求
-
包含
JFMT
提示的查询必须也包含SYNTACTIC_JOIN
提示。否则,优化器会忽略JFMT
提示并抛出一条警告。 -
联接语法必须符合 ANSI SQL-92 联接约定。