SQL ELTの互換性
トランスフォーメーション、変数、関数、および演算子をデータベースにプッシュするようにタスクを設定できます。
SQL ELTの最適化を使用する場合、Secure Agentはデータベース内の同等の演算子、変数、関数を特定することで、トランスフォーメーションの式を変換します。対応する演算子、変数、および関数が存在しない場合、Secure Agentはトランスフォーメーションロジックを処理します。
Snowflake Data Cloudでの関数
SQL ELTの最適化を使用する場合、データ統合はデータベース内の同等の関数を特定することで、トランスフォーメーションの式を変換します。対応する関数が存在しない場合は、データ統合がトランスフォーメーション論理を処理します。
次の表に、完全なSQL ELTの最適化を使用してSnowflakeにプッシュできるSQL ELT関数の可用性を示します。
機能 | 機能 | 機能 |
|---|
ABS() | IS_SPACES | SIN() |
ASCII() | LAST_DAY() | SINH() |
ADD_TO_DATE() | LENGTH() | SQRT() |
AVG() | LN() | STDDEV() |
CEIL() | LOG() | SUBSTR() |
CHR() | LOWER() | SUM() |
CONCAT() | LPAD() | SYSDATE() |
COS() | LTRIM() | SYSTIMESTAMP() |
COSH() | MAX() | TAN() |
COUNT() | MAKE_DATE_TIME | TANH() |
DATE_COMPARE() | MEDIAN() | TO_BIGINT |
DATE_DIFF() | MIN() | TO_CHAR(DATE) |
DECODE() | MOD() | TO_CHAR(NUMBER) |
EXP() | POWER() | TO_DATE() |
FLOOR() | REG_EXTRACT() | TO_DECIMAL() |
GET_DATE_PART() | REG_MATCH() | TO_FLOAT() |
IIF() | REG_REPLACE | TO_INTEGER() |
IN() | REPLACECHR() | TRUNC(DATE) |
INITCAP() | REPLACESTR() | TRUNC(NUMBER) |
INSTR() | ROUND(NUMBER) | UPPER() |
IS_DATE | RPAD() | MD5() |
IS_NUMBER | RTRIM() | VARIANCE() |
ISNULL() | SIGN() | - |
関数のルールおよびガイドライン
SQL ELT関数をSnowflakeにプッシュする際は、次のルールとガイドラインを考慮してください。
- •Snowflakeの完全なSQL ELTの最適化に適用できない関数を指定した場合、マッピングは部分的なSQL ELTの最適化を使用して実行されるか、完全なSQL ELTの最適化を使用せずに実行されます。
- •式トランスフォーメーションでSTDDEV()関数を設定する際に、STDDEV()関数にフィルタ条件引数を渡すことはできません。
- •式トランスフォーメーションでINSTR()関数を設定する場合は、次のガイドラインを考慮してください。
- - 開始引数に負の値を渡すことはできません。
- - フィールド式でワイルドカードを使用することはできません。
Snowflake Data Cloudでの演算子
SQL ELTの最適化を使用する場合、データ統合はデータベース内の同等の演算子を特定することで、トランスフォーメーションの式を変換します。対応する演算子が存在しない場合は、データ統合がトランスフォーメーションロジックを処理します。
次の表に、Snowflakeにプッシュできる演算子を示します。
演算子 | 演算子 |
|---|
+ | >= |
- | <= |
* | ! = |
/ | AND |
% | OR |
|| | NOT |
> | IS NULL |
< | IS NOT NULL |
= | |
Snowflake Data Cloudでの変数
完全なSQL ELTを使用して、SESSSTARTTIME変数をSnowflakeデータベースにプッシュできます。