|
|||||||||||||||||||||||||||||||||||||||
| 前のページ 1 2 | |||||||||||||||||||||||||||||||||||||||
| DECODE関数 | |||||||||||||||||||||||||||||||||||||||
|
OracleのDECODE関数(リスト8)は、列の値によって返す値を変えることができる便利な関数です。PostgreSQLには等価な働きをするCASE文(リスト9)があるので【注2】、それに変更します。 |
|||||||||||||||||||||||||||||||||||||||
SELECT 担当者名,
|
|||||||||||||||||||||||||||||||||||||||
|
リスト8:OracelのDECODE関数本文 |
|||||||||||||||||||||||||||||||||||||||
SELECT 担当者名,
|
|||||||||||||||||||||||||||||||||||||||
|
リスト9:PostgreSQLのCASE文 |
|||||||||||||||||||||||||||||||||||||||
|
※注2:
なお、Oracleでは、9iからCASE文も使えます。
|
|||||||||||||||||||||||||||||||||||||||
| 図14は実行結果です。 |
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
図14:CASE文の実行結果 |
|||||||||||||||||||||||||||||||||||||||
| NVL、NVL2、COALESCE関数 | |||||||||||||||||||||||||||||||||||||||
|
Oracleには、最初のNULLでない値を返す、便利なNVL関数があります。 |
|||||||||||||||||||||||||||||||||||||||
SELECT 商品名, NVL( 卸単価, 0 ) "卸単価"
|
|||||||||||||||||||||||||||||||||||||||
| PostgreSQLにも等価な機能を持つCOALESCE関数がありますので、それに変更します。COALESCE関数【注3】は可変個の引数を取りますので、OracleのNVL2関数も同様に変更できます。 |
|||||||||||||||||||||||||||||||||||||||
|
※注3:
Oracle 9iからはCOALESCE関数が使えます。 |
|||||||||||||||||||||||||||||||||||||||
SELECT 商品名, COALESCE( 卸単価, 0 )
|
|||||||||||||||||||||||||||||||||||||||
| 図15は実行結果です。 |
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
図15:COALESCE関数の実行結果 |
|||||||||||||||||||||||||||||||||||||||
|
前のページ 1 2 |
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||

