IBM PureData System for Analytics (Netezza) の組み込み関数および SQL 拡張ツールキット関数の Db2 互換性

IBM PureData® System for Analytics (Netezza®) で使用可能な関数の多くは、それと同じものが Db2® 製品で提供されています。 場合によっては、同様のサポートをする別の名前の Db2 関数など、代替手段を使用する必要があります。

以下の表では、対応する Db2 関数 (名前と動作が同じもの) がない Netezza 関数を示します。 Netezza 関数の代替手段を使用できる場合は、それを示します。

Netezza SQL 関数

表 1. ファジー・ストリング検索関数
Netezza 関数 Db2 における代替手段
dle_dst 使用可能な代替手段はありません。
le_dst 使用可能な代替手段はありません。
表 2. 音声マッチング関数
Netezza 関数 Db2 における代替手段
dbl_mp 使用可能な代替手段はありません。
nysiis 使用可能な代替手段はありません。
pri_mp 使用可能な代替手段はありません。
score_mp 使用可能な代替手段はありません。
sec_mp 使用可能な代替手段はありません。
表 3. 値関数
Netezza 関数 Db2 における代替手段
current_catalog セッション変数を作成します。
current_db セッション変数を作成します。
current_tx_path セッション変数を作成します。
current_tx_schema セッション変数を作成します。
current_userid セッション変数を作成します。
current_useroid セッション変数を作成します。

Netezza SQL 拡張関数

表 4. 三角関数
Netezza 関数 Db2 における代替手段
pi ユーザー定義関数 (UDF) を作成します。
表 5. 乱数関数
Netezza 関数 Db2 における代替手段
setseed シードを RANDOM 関数に渡します。
表 6. 数字関数
Netezza 関数 Db2 における代替手段
dceil 入力タイプ DOUBLE で CEIL 関数を使用します。
dfloor 入力タイプ DOUBLE で FLOOR 関数を使用します。
fpow 入力タイプ DOUBLE で POW 関数を使用します。
numeric_sqrt 入力タイプ DECFLOAT で SQRT 関数を使用します。
n! 使用可能な代替手段はありません。
表 7. 2 項数学関数
Netezza 関数 Db2 における代替手段
intNshl 2 の補数の乗算を使用します。
intNshr 2 の補数の除算を使用します。
表 8. 日付/時刻関数
Netezza 関数 Db2 における代替手段
age (両方のバージョン) Db2 AGE 関数を使用できますが、INTEGER が返されます。
duration_add ラベル付き期間を使用するか、日付、時刻、またはタイム・スタンプ算術計算を使用します。これは、Datetime operations and durations で説明されています。
duration_subtract ラベル付き期間を使用するか、日付、時刻、またはタイム・スタンプ算術計算を使用します。これは、Datetime operations and durations で説明されています。
timeofday VARCHAR_FORMAT 関数を CURRENT_TIMESTAMP 特殊レジスターとともに使用します。
表 9. 文字ストリング関数
Netezza 関数 Db2 における代替手段
translate Db2 TRANSLATE 関数を使用できます。ただし、この関数のオプションのデフォルトの順序は、Netezza translate 関数のオプションの順序と異なります。 Db2 TRANSLATE 関数のオプションで Netezza の順序を有効にするには、SQL_COMPAT グローバル変数を 'NPS' に設定します。
unichr 使用可能な代替手段はありません。
unicode 使用可能な代替手段はありません。
unicodes 使用可能な代替手段はありません。
表 10. 変換関数
Netezza 関数 Db2 における代替手段
hex_to_binary HEXTORAW 関数を使用します。
hex_to_geometry 使用可能な代替手段はありません。
int_to_string 使用可能な代替手段はありません。
string_to_int 使用可能な代替手段はありません。
表 11. その他の非集約関数
Netezza 関数 Db2 における代替手段
get_viewdef SYSCAT.VIEWS TEXT 列を照会します。
表 12. その他の関数
Netezza 関数 Db2 における代替手段
dense_rank この関数は、OLAP 照会でのみサポートされます。
rank この関数は、OLAP 照会でのみサポートされます。
trim より複雑な使用法では相違点があります。

SQL 拡張ツールキット関数

表 13. SQL 拡張ツールキット関数
SQL 拡張ツールキット関数のカテゴリー 特定の関数 Db2 における代替手段
XML すべての関数 (例: IsValidXML) Netezza XML 関数と Db2 XML 関数との間に 1 対 1 のマッピングはありません。 適切な Db2 XML 関数を使用してください。
データ変換 compress、compress_nvarchar、decompress、decompress_nvarchar、uudecode、および uuencode の各関数 使用可能な代替手段はありません。ただし、Db2 製品ではデフォルトで、BLU 表に対して圧縮を使用するため、自分でデータを列レベルで圧縮する必要がない可能性があります。
encrypt、encrypt_nvarchar、decrypt、decrypt_nvarchar、fpe_decrypt、および fpe_encrypt の各関数 Db2 データベースは暗号化されます。しかし、関数を使用する必要がある場合は、Db2 ENCRYPT、DECRYPT_BIN、および DECRYPT_CHAR 関数の使用を検討してください。 マスキングのために、行および列のアクセス制御 (RCAC) を使用できます。
ハッシュ hash_nvarchar 関数 Db2 HASH 関数を使用して、hash_nvarchar という名前のソース派生関数を作成できます。
テキスト解析関数 regexp_extract_all、regexp_extract_all_sp、regexp_extract_sp、および regexp_replace_sp の各関数 Db2 REGEXP_EXTRACT 関数を使用するようにコードを書き直すことを検討してください。
配列関数 すべての関数 (例: add_element) SQL PL 配列サポートの使用を検討してください。
コレクション関数 collection および element_type の各関数 代わりに SQL PL 配列サポートの使用を検討してください。
その他の関数 corr、covar_pop、および covar_samp の各関数 Netezza 名に対応する同義語で、以下の Db2 関数を使用できます。
  • CORR は CORRELATION 関数の同義語です。
  • COVAR_POP は COVARIANCE 関数の同義語です。
  • COVAR_SAMP は COVARIANCE_SAMP 関数の同義語です。
mt_random 関数 Mersenne Twister 疑似乱数生成プログラムを使用する必要がない場合は、Db2 RANDOM 関数を使用します。