附加提示并创建 table 作为

Append hint and create table as

目前我们正在通过以下(简化)sql:

加载大量数据
create table temp_table as (
    select /*+parallel(2) */ col_a, col_b, col_c
    from tab_a
);

我想通过添加 APPEND 提示来进一步提高性能。是否可以将其添加到 CREATE TABLE AS?还是仅插入提示?我该如何更改它以应用 append 提示?

CREATE TABLE AS SELECT 使用自动追加。这是因为其他会话在加载之前不会看到 table,因此行可以直接存储到数据文件,绕过缓冲区缓存。

您可以在 CREATE TABLE AS SELECT 上使用 EXPLAIN PLAN 简单地检查一下。如果您看到 LOAD AS SELECT,则表示直接路径 (APPEND)。如果有 LOAD TABLE CONVENTIONAL 它不是直接路径 (NOAPPEND).