
# Flink SQL概述
DWS-connector主要实现了**DynamicTableSourceFactory** 和**DynamicTableSinkFactory**接口，可用于对接DWS表作为Flink作业的源表、结果表和维表。
使用DWS-Connector做源表时，DWS-Connector实现了SupportsLimitPushDown和SupportsFilterPushDown接口，支持将limit和where条件下推到数据库执行。
使用DWS-Connector做结果表时，SQL语法格式可能在不同Flink环境下有细微差异，具体以实际环境格式为准。
详情请参见[做源表](https://support.huaweicloud.com/tg-dws/dws_07_0183.html#ZH-CN_TOPIC_0000002202141681)、[做结果表](https://support.huaweicloud.com/tg-dws/dws_07_0184.html#ZH-CN_TOPIC_0000002166616000)和[做维表](https://support.huaweicloud.com/tg-dws/dws_07_0185.html#ZH-CN_TOPIC_0000002202096601)。其中，编写Flink SQL时，DWS数据类型与Flink SQL数据类型的映射关系如下表所示：
表1DWS数据类型与Flink SQL数据类型映射关系表 
| DWS数据类型                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Flink SQL数据类型                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 备注                             |
|:---|:---|:---|
| TINYINT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | TINYINT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | --                             |
| - SMALLINT  - SMALLSERIAL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | SMALLINT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | --                             |
| - INTEGER  - SERIAL  - BINARY_INTEGER                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | INT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 其中BINARY_INTEGER为兼容Oracle类型。   |
| - BIGINT  - BIGSERIAL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | BIGINT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | --                             |
| - REAL  - FLOAT4                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | FLOAT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | --                             |
| - FLOAT8  - DOUBLE PRECISION  - BINARY_DOUBLE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | DOUBLE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 其中BINARY_DOUBLE为兼容Oracle类型。    |
| - NUMERIC(p, s)  - DECIMAL(p, s)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | DECIMAL(p, s)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | --                             |
| - BIT  - BOOL  - BOOLEAN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | BOOLEAN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | --                             |
| DATE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | DATE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | --                             |
| TIME \[(p)\] \[WITHOUT TIMEZONE\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | TIME \[(p)\] \[WITHOUT TIMEZONE\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | --                             |
| TIMESTAMP \[(p)\] \[WITHOUT TIMEZONE\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | TIMESTAMP \[(p)\] \[WITHOUT TIMEZONE\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | --                             |
| TIMESTAMP \[(p)\] \[WITH TIMEZONE\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | TIMESTAMP_LTZ \[(p)\]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | --                             |
| - CHAR(n)  - CHARACTER(n)  - NCHAR(n)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | - CHAR(n)  - STRING                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | --                             |
| - VARCHAR(n)  - CHARACTER VARYING(n)  - VARCHAR2(n)  - NVARCHAR2(n)  - CLOB  - TEXT   | - VARCHAR(n)  - STRING                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 其中VARCHAR2(n)、CLOB为兼容Oracle类型。 |
| BYTEA                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | BYTES                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | --                             |
| --                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | - ARRAY  - ROW  - MAP  - MULTISET  - RAW   | 不支持。                           |
   
