データ統合エクスプレッション配列要素の変換

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

配列要素の変換

対応している処理: バッチ、ストリーミング

配列の各要素を式を使用してマップします。 配列インデックスは1から始まることに注意してください。 式のカテゴリ: 配列

宣言された引数

  • 配列 - 説明なし
    式<配列<AnyType>>
  • 適用する式 - 配列の各要素に1回適用する式。
    式<T>

型変数の制約:
TはAnyTypeを受け入れます

出力タイプ: 配列<T>

例 1 - 基本ケース

引数の値:

  • 配列: flight_number
  • 適用する式:
    stringBeforeDelimiter(
     delimiter: -,
     expression: element,
     ignoreCase: false,
    )
flight_number:arrow_right:出力
[ XB-134, MT-111 ][ XB, MT ]

例 2 - 基本ケース

引数の値:

  • 配列: miles
  • 適用する式:
    add(
     expressions: [previous_miles, element],
    )
milesprevious_miles:arrow_right:出力
[ 12300, 12342 ]10000[ 22300, 22342 ]

例 3 - 基本ケース

説明: 配列要素にインデックスを加算します。インデックスは1から始まります。 引数の値:

  • 配列: array
  • 適用する式:
    add(
     expressions: [elementIndex, element],
    )
array:arrow_right:出力
[ 1, 1, 1 ][ 2, 3, 4 ]

例 4 - 基本ケース

引数の値:

  • 配列: miles
  • 適用する式:
    cast(
     expression: element,
     type: String,
    )
miles:arrow_right:出力
[ 12300, 12342 ][ 12300, 12342 ]

例 5 - 基本ケース

説明: 配列の構造体から構造体要素を取得します。 引数の値:

  • 配列: raw_data
  • 適用する式:
    getStructField(
     locator: miles,
     struct: element,
    )
raw_data:arrow_right:出力
[ {
miles: 22300,
tail_number: XB-112,
}, {
miles: 22342,
tail_number: XB-112,
} ]
[ 22300, 22342 ]

例 6 - 基本ケース

説明: 配列の構造体から構造体要素を取得します。 引数の値:

  • 配列: raw_data
  • 適用する式:
    transformMapKeys(
     expression:
    uppercase(
     expression: key,
    ),
     map: element,
    )
raw_data:arrow_right:出力
[ {
 miles -> 22300,
 tail_number -> XB-112,
}, {
 miles -> 22342L,
 tail_number -> XB-112,
} ]
[ {
 MILES -> 22300,
 TAIL_NUMBER -> XB-112,
}, {
 MILES -> 22342L,
 TAIL_NUMBER -> XB-112,
} ]