機械翻訳について

Bサポート対象のSQL構文および関数

次のトピックでは、サポートされているSQLの構文と関数について説明します:

サポート対象のSQL文

いくつかの例外はあるものの、ゲートウェイではOracleのDELETE文、INSERT文、SELECT文およびUPDATE文が完全サポートされています。

ゲートウェイでは、Oracleデータ定義言語(DDL)文はサポートされていません。 OracleのALTER文、CREATE文、DROP文、GRANT文またはTRUNCATE文の形式は一切使用できません。 代わりに、Teradataデータベースに対してDDL文を使用する必要がある場合は、ゲートウェイのパススルー機能を使用してください。

関連項目:

キーワード、パラメータおよびオプションの詳細な説明は、『Oracle Database SQL言語リファレンス』を参照してください。

DELETE

DELETE文は完全サポートされています ただし、TeradataでサポートされているOracle機能のみを使用できます。

関連項目:

「"Teradataがサポートする関数"」はサポートされている関数のリストです。

INSERT

INSERT文は完全サポートされています。 ただし、TeradataでサポートされているOracle機能のみを使用できます。

関連項目:

「"Teradataがサポートする関数"」はサポートされている関数のリストです。

SELECT

SELECT文は完全サポートされています。ただし、次の例外があります。

  • CONNECT BY condition

  • NOWAIT

  • START WITH condition

  • WHERE CURRENT OF

UPDATE

UPDATE文は完全サポートされています。 ただし、TeradataでサポートされているOracle機能のみを使用できます。 また、外側の問合せで同じ表名を参照するSQL文をサブ問合せで使用することはできません。 サブ問合せはSET句ではサポートされていません。

関連項目:

「"Teradataがサポートする関数"」はサポートされている関数のリストです。

Oracle関数

すべての機能は、ゲートウェイがTeradata SQLに変換した後、Teradataデータベースによって評価されます。

Teradataがサポートしていない関数

Teradataで同等の機能を持たないOracle SQL関数は、 DELETE INSERT、または UPDATE文ではサポートされませんが、文がSELECT文の場合はOracleデータベースによって評価されます。 つまり、Oracleデータベースは、ゲートウェイに送信されたSELECT文の後処理を実行します。

サポートされていない関数がDELETEINSERT、またはUPDATE文で使用されている場合、次のOracleエラーが発生します:

ORA-02070: database db_link_name does not support function in this context

Teradataがサポートする関数

ゲートウェイは、SQL文の次のOracleデータベース関数を同等のTeradata関数に変換します:

算術演算子
Oracle Teradata

+

+

-

-

*

*

/

/

比較演算子
Oracle Teradata

=

=

>

>

<

<

>=

>=

<=

<=

<>, !=, ^=

<>, !=

IS NOT NULL

IS NOT NULL

IS NULL

IS NULL

グループ機能
Oracle Teradata

AVG

AVG

COUNT

COUNT

MAX

MAX

MIN

MIN

SUM

SUM

文字列関数
Oracle Teradata

INSTR

POSITION

その他の関数
Oracle Teradata

ABS

ABS

EXP

EXP

LOG(a, b)

LOG10(b) / LOG10(a)

POWER

**

SQRT

SQRT