すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:列のマージ

最終更新日:Apr 02, 2026

列のマージコンポーネントは、2 つのテーブルを横に並べて結合し、2 番目のテーブルのすべての列を最初のテーブルの右側に追加します。行数は変わらず、列は積み上げられるのではなく、水平に結合されます。

前提条件

開始する前に、以下を確認してください:

  • 両方のテーブルの行数が同じであること。行数が異なる場合、コンポーネントはエラーを返します。

  • 一方のテーブルにパーティションがある場合、パーティションテーブルを 2 番目の入力ポートに接続します。最初のポートに接続すると、操作は失敗します。

コンポーネントの構成

以下のいずれかの方法を使用します。

方法1:パイプラインページでのコンポーネントの構成

左側テーブルからマージする列を選択すると、結果は右テーブルの指定された列に保存されます。

Component configurations

方法2:PAI コマンドの使用

構成は、appendColumns PAI コマンドを介して渡します。パイプラインで PAI コマンドを呼び出すには、SQL Script コンポーネントを使用します。

PAI -name appendColumns
    -project algo_public
    -DinputTableNames=maple_test_appendcol_basic_input1,maple_test_appendcol_basic_input2
    -DoutputTableName=maple_test_appendcol_setOutCol_output
    -DoutputTableColNames=x0,x1,x2,x3,x4,x5,x6,x7,x8,x9;

パラメーター

パラメーター必須デフォルト説明
inputTableNamesはい2 つの入力テーブルの名前をカンマ (,) で区切って指定します。
outputTableNameはい出力テーブルの名前。
selectedColNamesListいいえ各入力テーブルから選択する列。テーブル内の列はカンマ (,) で区切り、2 つのテーブルはセミコロン (;) で区切ります。両方のテーブルからすべての列を選択する場合は、値をダブルクォーテーション (") で囲みます。そうしないと、セミコロンがコマンドの終端記号として扱われます。一方のテーブルからすべての列を選択する場合は、その列名を省略できますが、セミコロンは保持する必要があります。
inputPartitionsInfoListいいえ各入力テーブルから読み取るパーティション。テーブル内のパーティションはスラッシュ (/) で区切り、2 つのテーブルはセミコロン (;) で区切ります。すべてのパーティションを選択する場合は、値をダブルクォーテーション (") で囲みます。テーブルがパーティション化されていない場合は、そのパーティション名を省略できますが、セミコロンは保持する必要があります。
autoRenameColいいえfalse出力テーブルの列を自動的に名前変更するかどうかを指定します。true に設定すると、outputTableColNames パラメーターは無視されます。
outputTableColNamesいいえ出力テーブルの新しい列名を順番に適用します。指定しない場合、両方のテーブルの元の列名が使用されます。autoRenameColtrue の場合は無視されます。
lifecycleいいえ出力テーブルのライフサイクル。正の整数である必要があります。
coreNumいいえシステムのデフォルト値割り当てるコア数。[1, 9999] の範囲の正の整数である必要があります。memSizePerCore と一緒に設定する必要があります。
memSizePerCoreいいえシステムのデフォルト値コアごとに割り当てられるメモリ (MB)。[1024, 65536] の範囲の正の整数である必要があります。coreNum と一緒に設定する必要があります。

列名の競合の処理

両方の入力テーブルが同じ列名を共有している場合、競合を解決しない限り、出力テーブルには重複した列名が含まれます。2 つのオプションがあります:

  • 自動名前変更autoRenameCol=true を設定します。PAI は自動的に一意の名前を割り当てます。出力列名を制御する必要がない場合に使用します。

  • 手動名前変更outputTableColNames に、すべての出力列をカバーする新しい名前のカンマ区切りリストを設定します。後続のステップが特定の列名に依存する場合に使用します。

autoRenameCol=true の場合、outputTableColNames に設定された値はすべて無視されます。

この例では、以下の 2 つのテーブルをマージします。

ソーステーブル 1: `maple_test_appendcol_basic_input1` (5 列、5 行)

col0:bigintcol1:doublecol2:stringcol3:Datetimecol4:Boolean
100.0aaaa2015-10-01 00:00:00TRUE
111.0aaaa2015-10-01 00:00:00FALSE
122.0aaaa2015-10-01 00:00:00TRUE
133.0aaaa2015-10-01 00:00:00TRUE
144.0aaaa2015-10-01 00:00:00TRUE

ソーステーブル 2: `maple_test_appendcol_basic_input2` (5 列、5 行)

col10:bigintcol11:doublecol12:stringcol13:Datetimecol14:Boolean
11010.02aaaa2015-10-01 00:00:00TRUE
11111.02aaaa2015-10-01 00:00:00FALSE
11212.02aaaa2015-10-01 00:00:00TRUE
11313.02aaaa2015-10-01 00:00:00TRUE
11414.02aaaa2015-10-01 00:00:00FALSE

次のコマンドを実行して 2 つのテーブルをマージし、すべての出力列の名前を変更します:

PAI -name appendColumns
    -project algo_public
    -DinputTableNames=maple_test_appendcol_basic_input1,maple_test_appendcol_basic_input2
    -DoutputTableName=maple_test_appendcol_setOutCol_output
    -DoutputTableColNames=x0,x1,x2,x3,x4,x5,x6,x7,x8,x9;

出力テーブル maple_test_appendcol_setOutCol_output には、10 列すべて (ソーステーブル 1 の x0~x4、ソーステーブル 2 の x5~x9) と同じ 5 行が含まれます:

x0x1x2x3x4x5x6x7x8x9
100aaaa2015-10-01 00:00:00true110102aaaa2015-10-01 00:00:00true
111aaaa2015-10-01 00:00:00false111112aaaa2015-10-01 00:00:00false
122aaaa2015-10-01 00:00:00true112122aaaa2015-10-01 00:00:00true
133aaaa2015-10-01 00:00:00true113132aaaa2015-10-01 00:00:00true
144aaaa2015-10-01 00:00:00true114142aaaa2015-10-01 00:00:00false