

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

# 数式で関数を使用する
<a name="expression-functions"></a>

次の関数を使用して、数式中のデータを操作することができます。

変換とメトリクスは、それぞれ異なる機能をサポートしています。次の表は、各型の数式プロパティに対応する関数の種類を示したものです。

**注記**  
1 つの数式には、最大 10 個の関数を含めることができます。


| 関数型 | 変換 | メトリクス | 
| --- | --- | --- | 
| [数式で一般的な関数を使用する](expression-common-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で比較関数を使用する](expression-comparison-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で条件関数を使用する](expression-conditional-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で文字列関数を使用する](expression-string-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で集計関数を使用する](expression-aggregation-functions.md) | <a name="polaris-no-para"></a>![A red circle with the letter x for no.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-no.png) いいえ | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で時間関数を使用する](expression-temporal-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 
| [数式で日付および時刻関数を使用する](expression-date-and-time-functions.md) | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | <a name="polaris-yes-para"></a>![A green circle with a checkmark for yes.](http://docs.aws.amazon.com/ja_jp/iot-sitewise/latest/userguide/images/icon-yes.png) はい | 

## 関数構文
<a name="expression-function-syntax"></a>

関数を作成するには、次の構文を使用します。

通常の構文  
通常の構文では、関数名の後に括弧が付き、引数は 0 個以上となります。  
`{{function_name}}({{argument1, argument2, argument3, ...}})`。例えば、通常の構文を持つ関数は、`log(x)` や `contains(s, substring)` のようになります。

統一関数呼び出し構文 (UFCS)   
UFCSでは、オブジェクト指向プログラミングにおけるメソッド呼び出しの構文を用いて、関数を呼び出すことができる。UFCSでは、最初の引数の後にドット (`.`) が付き、次に関数名、残りの引数がある場合は括弧の中に入る。  
`{{argument1}}.{{function_name}}({{argument2}}, {{argument3}}, ...)`。例えば、UFCSを使った関数は、`x.log()` や `s.contains(substring)` のようになります。  
UFCS を使用して後続の関数を連鎖することもできます。 AWS IoT SiteWise は、現在の関数の評価結果を次の関数の最初の引数として使用します。  
例えば、`message.jp('$.status').lower().contains('fail')` の代わりに `contains(lower(jp(message, '$.status')),'fail')` を使用することができます。  
詳しくは、[[D Programming Language]](https://tour.dlang.org/tour/en/gems/uniform-function-call-syntax-ufcs) (D プログラミング言語) のウェブサイトをご覧ください。

**注記**  
UFCS はすべての AWS IoT SiteWise 関数に使用できます。  
AWS IoT SiteWise 関数では大文字と小文字は区別されません。例えば、`lower(s)` と `Lower(s)` を入れ替えて使用することができます。