语句
DDL语句
DML语句[insert into]
DML语句用来把数据从源头表输出到结果表,比如在一个作业中写入一个Sink或多个Sink
写入一个Sink
源表结果表
CREATE TABLE datagen_source (
name VARCHAR,
score BIGINT
) WITH (
'connector' = 'datagen'
);
DML语句
create table blackhole_sink(
name VARCHAR,
score BIGINT
) WITH (
'connector' = 'blackhole'
);
INSERT INTO blackhole_sink SELECT UPPER(name), score FROM datagen_source;
写入多个Sink
源表目标表
CREATE TABLE datagen_source (
name VARCHAR,
score BIGINT
) WITH (
'connector' = 'datagen'
);
--目标表一
CREATE TABLE blackhole_sinkA(
name VARCHAR,
score BIGINT
) WITH (
'connector' = 'blackhole'
);
DML语句
--目标表二
CREATE TABLE blackhole_sinkB(
name VARCHAR,
score BIGINT
) WITH (
'connector' = 'blackhole'
);
--固定写法:写入多个Sink语句时,需要以 BEGIN STATEMENT SET;开头,以 END;结尾。
BEGIN STATEMENT SET; --写入多个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; --写入多个Sink时,必填。
DQL语句
参考Flink v1.11以后的语句
创建数据视图
/***
* CREATE TEMPORARY VIEW viewName AS [ (columnName[ , columnName]* ) ] queryStatement;
* viewName:视图名称。
* columnName:字段名称。
* queryStatement:嵌套语句别名。
***/
CREATE TEMPORARY VIEW tmp_view AS
SELECT
*
FROM
datagen_source;
INSERT INTO
rds_output
SELECT
r,
t,
c,
u
FROM
tmp_view;