DB2 の isnull 関数に相当するパフォーマントはありますか?
私たちの製品のいくつかは内部のもので、名前がありません:
Select product.id, isnull(product.name, "Internal)
From product
戻る可能性があります:
1 Socks
2 Shoes
3 Internal
4 Pants
その価値のために、COALESCEは似ていますが、
IFNULL(expr1, default)
は、DB2 で探している正確な一致です。
COALESCE は複数の引数を許可し、最初の NON NULL 式を返しますが、IFNULL は式とデフォルトのみを許可します。
したがって
SELECT product.ID, IFNULL(product.Name, "Internal") AS ProductName
FROM Product
完全を期すために追加するだけで、探しているものと以前の回答が得られます。
DB2 には関数 NVL(field, value if null) があります。
例:
ID を選択し、NVL(NAME, "Internal) を名前として、NVL(PRICE,0) を UR の製品の価格として選択します。
私は DB2 に詳しくありませんが、COALESCE は試しましたか?
すなわち:
SELECT Product.ID, COALESCE(product.Name, "Internal") AS ProductName
FROM Product
COALESCE
機能 同 ISNULL
機能 注.COALESCE
null をチェックする列と同じデータ型の関数を使用する必要があります。
COALESCE
と機能が一部似ていると思いますisnull
が、試してみてください。
アプリケーション プログラムを介して null 処理関数を使用してみませんか。それはより良い代替手段です。
これが他の誰かを助けることを願っています
SELECT
.... FROM XXX XX
WHERE
....
AND(
param1 IS NULL
OR XX.param1 = param1
)