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 関数を使用します。 |