SQL ISNULL()、NVL()、IFNULL() および COALESCE() 関数
以下の「製品」表を参照してください:
| P_Id | ProductName | UnitPrice | UnitsInStock | ユニットオンオーダー |
|---|---|---|---|---|
| 1 | ヤールスバーグ | 10.45 | 16 | 15 |
| 2 | マスカルポーネ | 32.56 | 23 | |
| 3 | ゴルゴンゾーラ | 15.67 | 9 | 20 |
「UnitsOnOrder」の場合はオプションであり、NULL 値を含めることができます。
次の SELECT ステートメントを使用します:
FROM Products
上記の例では、「UnitsOnOrder」値が NULL の場合、結果は NULL になります。
Microsoft の ISNULL() 関数は、NULL 値の処理方法を指定するために使用されます。
NVL()、IFNULL()、および COALESCE() 関数も同じ結果を達成できます。
ここでは、NULL 値を 0 にします。
以下では、「UnitsOnOrder」が NULL の場合、値が NULL の場合、ISNULL() は 0 を返すため、計算には影響しません:
SQL Server / MS Access
FROM Products
Oracle
Oracle には ISNULL() 関数がありません。ただし、NVL() 関数を使用しても同じ結果を得ることができます:
FROM Products
MySQL
MySQL には ISNULL のようなものもあります() 関数。ただし、Microsoft の ISNULL() 関数とは動作が少し異なります。
MySQL では、次のように IFNULL() 関数を使用できます:
FROM Products
または COALESCE() 関数を使用することもできます。以下に示すように:
FROM Products












![PHP 実践開発入門: PHP クイック作成 [中小企業フォーラム]](https://img.php.cn/upload/course/000/000/035/5d27fb58823dc974.jpg)









