トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

DB2 Oracle 関数マッピング

http://www.itmedia.co.jp/enterprise/0308/24/epn02_5.html

文字列 -> 数値

OracleのTO_NUMBER関数について、小数点以下桁数や精度については変換関数decimal(n、p、s)関数で対応可能なケースがあります。また、文字列から数値への変換などであれば、各種変換関数(smallint、decimal、doubleなど)を使用して変換できます。たとえば、smallint型に変換するには次のように指定します。

SELECT smallint('12')
FROM SYSIBM.SYSDUMMY1;

数値 -> 文字列

DB2 V8にはTIMESTAMP型を文字列に変換するTO_CHAR関数、文字列をTIMESTAMP型に変換するTO_DATE関数があります。フォーマット形式は、「YYYY-MM-DD HH24:MM:SS」のみです。多様な変換形式を持つOracleの同名の関数とDB2 V8の関数を1:1で置き換えるのは困難なことです。移行の必要がある場合は、UDFを作成して対応してください。

直接マッピングできる関数

関数 互換性
ABS
ASCII
CHAR
CONCAT ○(型に互換性が必要)
COUNT
LENGTH △(VARCHAR型とCHAR型で意味が異なる)
LTRIM △(引数が1つの場合のみ)
LOWER
MAX
MIN
MOD ○(n=0のみ)
POWER
REPLACE
SIGN
RTRIM △(引数が1つの場合のみ)
SOUNDEX
SUBSTR
SUM
TRANSLATE △(引数の並びが逆)
UPPER
USER

同じ名前でも出力フォーマットが異なる関数

三角関数 ACOS、ASIN、ATAN、ATAN2、ATANH、COS、COSH、SIN、SINH、TAN、TANH
まるめ・切り捨て CEIL、FLOOR、ROUND、TRUNC
指数 EXP
対数 LN
平方根 SORT
平均 AVG

同等機能を持つ異なる名前の関数で対応

Oracle DB2 互換性
INSTR、INSTRB LOCATE △(引数4をとらない場合のみ)
LENGTHB LENGTH
LOG LOG10 △(定数が10のときのみ)
RAWTOHEX HEX
NVL COALESCE ○(DB2では型に互換性が必要)
SUBSTRB SUBSTR
SYSDATE CURRENT DATE
TO_MULTI_BIYE VARGRAPHIC
VSIZE LENGTH
[カテゴリ: データベース > DB2]

[通知用URL]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2009年06月07日 00時46分25秒