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 | ◎ |
[通知用URL]
Tweet
最終更新時間:2009年06月07日 00時46分25秒