All Products
Search
Document Center

Realtime Compute for Apache Flink:INSERT INTO

Last Updated:Mar 10, 2026

Topik ini menjelaskan cara menggunakan pernyataan INSERT INTO untuk menulis ke satu atau beberapa sink dalam suatu pekerjaan.

Informasi latar belakang

Pernyataan INSERT mendukung SQL hint dengan kata kunci OPTIONS untuk pass parameter ke tabel sink. Untuk informasi selengkapnya, lihat SQL Hints.

Contoh penulisan ke satu sink

-- Buat tabel sumber.
CREATE TEMPORARY TABLE datagen_source (
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'datagen' 
);

-- Buat tabel sink.
CREATE TEMPORARY TABLE blackhole_sink(
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'blackhole' 
);

-- Pernyataan DML
INSERT INTO blackhole_sink SELECT UPPER(name), score FROM datagen_source;

Contoh penulisan ke multiple sink

Penting

Pernyataan yang menulis ke multiple sink harus diawali dengan BEGIN STATEMENT SET; dan diakhiri dengan END;.

Contoh ini menulis data ke dua sink.

-- Buat tabel sumber.
CREATE TEMPORARY TABLE datagen_source (
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'datagen'
);

-- Buat tabel sink A.
CREATE TEMPORARY TABLE blackhole_sinkA(
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'blackhole' 
);

-- Buat tabel sink B.
CREATE TEMPORARY TABLE blackhole_sinkB(
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'blackhole' 
);

-- Pernyataan DML
BEGIN STATEMENT SET;      -- Diperlukan untuk menulis ke multiple sink.
INSERT INTO blackhole_sinkA 
  SELECT UPPER(name), sum(score) 
  FROM datagen_source 
  GROUP BY UPPER(name);
INSERT INTO blackhole_sinkB 
  SELECT LOWER(name), max(score) 
  FROM datagen_source 
  GROUP BY LOWER(name);
END;      -- Diperlukan untuk menulis ke multiple sink.