

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# NVL および COALESCE 関数
<a name="NVL_function"></a>

一連の式の中で、Null 以外の最初の式の値を返します。Null 以外の値が見つかると、リスト内の残りの式は評価されません。

NVL は COALESCE と同じです。これらはシノニムです。このトピックでは、両方の構文について説明し、例を示します。

## 構文
<a name="NVL_function-synopsis"></a>

```
NVL( expression, expression, ... )
```

COALESCE の構文は同じです。

```
COALESCE( expression, expression, ... )
```

すべての式が null の場合、結果は null になります。

これらの関数は、プライマリ値がないか Null の場合にセカンダリ値を返すときに役に立ちます。例えば、クエリを実行すると、使用可能な 3 つの電話番号 (携帯、自宅、職場) のうち最初の電話番号が返されることがあります。関数内の式の順序によって、評価の順序が決まります。

## 引数
<a name="NVL_function-arguments"></a>

 *expression*   
Null ステータスが評価される列名などの式。

## 戻り型
<a name="NVL_function-returntype"></a>

AWS Clean Rooms は、入力式に基づいて返される値のデータ型を決定します。入力式のデータ型に共通の型がない場合は、エラーが返されます。

## 例
<a name="NVL_function-examples"></a>

リストに整数式が含まれている場合、関数は整数を返します。

```
SELECT COALESCE(NULL, 12, NULL);

coalesce
--------------
12
```

この例は前の例と同じですが、NVL を使用して、同じ結果が返される点が異なります。

```
SELECT NVL(NULL, 12, NULL);

coalesce
--------------
12
```

次の例は、文字列型を返します。

```
SELECT COALESCE(NULL, 'AWS Clean Rooms', NULL);

coalesce
--------------
AWS Clean Rooms
```

次の例では、式リストのデータ型が異なるため、エラーになります。この場合、リストには文字列型と数値型の両方があります。

```
SELECT COALESCE(NULL, 'AWS Clean Rooms', 12);
ERROR: invalid input syntax for integer: "AWS Clean Rooms"
```