メインコンテンツにスキップ

coalesce 関数

coalesce は任意の数の引数を取り、nullまたは空文字列ではない最初の引数を返します。

すべての引数は同じ型である必要があります。OpenTofuは、型が一致しない引数を、すべての引数が変換できる最も一般的な型に変換しようとします。型に互換性がない場合は、エラーを返します。結果の型は、すべての引数の型と同じです。

コードブロック
> coalesce("a", "b")
a
> coalesce("", "b")
b
> coalesce(1,2)
1

文字列のリストを使用して coalesce 操作を実行するには、... 記号を使用してリストを引数として展開します。

コードブロック
> coalesce(["", "b"]...)
b

OpenTofu は、すべての引数が変換できる結果タイプを選択しようとします。そのため、引数の型を混在させると、OpenTofu の自動型変換ルールにより、予期しない結果が生じる可能性があります。

コードブロック
> coalesce(1, "hello")
"1"
> coalesce(true, "hello")
"true"
> coalesce({}, "hello")

Error: Error in function call

Call to function "coalesce" failed: all arguments must have the same type.
  • coalescelist は、個々の引数ではなくリスト引数で同様の操作を実行します。