2016-08-30 1 views
1

すべてのレコードを参照せずに最後のID(ID_MES)を返す方法はありますか?最後のIDを列から返す

私の仕事Talentd:最後のレコードを見つけるために、それが不可能な記録を閲覧することなく

my job TALEND

+0

USING CAPSは叫んでいると考えられます。あなたはあなたの質問を編集したいかもしれません。私たちはあなたのコンポーネントの内部を見ることができないので、助けはできません。 'ID_MES'列は何ですか?あなたは最後のIDを何に使いたいですか? – tobi6

+0

@Sam Meskaoui:質問を編集してtFileInputDelimitedのスキーマを表示し、ID_MES列が入力ファイルに存在する場合は、ソート基準があると思いますか? –

答えて

1

。ただし、以下のようにコンポーネント間のデータフローを最小限に抑えることができます。

簡単にするために、入力を固定フロー入力として示しています。 ロジックは次のとおりです。

  1. は、各レコードの列の「N」の数があり、その後、最初の私たちは「tFilterColumns」を使用してに興味がある列を考慮し、他のすべての列を排除するとします。
  2. tAggregateRowを使用して、その列の最後の値を検索します。
  3. globalMap [または]の値をtJavaRowを使用して単純に表示します。

私が開発した以下の仕事を見つける。

私は、下の図のように6列12レコードの固定フローを作成しました。

enter image description here

私はので、私はtFilterColumnsを使用しています、一人で 'ID_MES' 列に興味があります。このコンポーネントを使用することで、不要なデータフローを排除できます。

enter image description here

そしてtAggregateRowが使用され、コンポーネントのプロパティのそれの操作部において、I「は、最後の」機能と出力列として「ID_MES」が使用されます。

enter image description here This is the tJavaRow component where we can use the last 'ID' value

、次のように最終的に出力されます。

enter image description here

+0

これは、作成者が別のフィールドを必要とせず、別のフローを持つフィールドを処理しなければ機能しません。ニースの解決策。 – dbh

+0

ありがとう –

関連する問題