行数が不明な csv ファイルがあります。
id,name,title,salary,time
123,abc,manager,10000,12:30
456,xyz,s manager,15000,13:45
789,tuv,junior,5000,09:15
123,abc,manager,10000,14:15
123,abc,manager,10000,15:35
上記では、 と で 3 つのレコードが重複していることに注意してid=123
くださいsalary=10000
。
FileNet には、以下のレコードがあります。
id,name,title,salary,status,sequence,time
123,abc,manager,10000,success,1,0
123,abc,manager,10000,failure,2,0
123,abc,manager,10000,failure,3,0
789,tuv,junior,5000,failure,1,0
上記の 3 つの重複があることに注意してください。1 つはステータス付きsuccess
、2つはfailure
ステータス付きです。
私の要件は、csv ファイルの行を 1 行ずつ順番に FileNet レコードと比較し、同じ ID と給与を持つ行が FileNet のレコードと一致するかどうかを順番に比較する必要があることです (ルックアップはフィールドid
とsalary
フィールドを使用して行われます)。時刻とステータスを に更新しsuccess
ます。
たとえば(123,abc,manager,10000,12:30)
、上記の csv ファイルの1 行(123,abc,manager,10000,failure,2,0)
と FileNet の 1 つのレコード。
FileNet の最終結果は次のようになります。
id,name,title,salary,status,time
123,abc,manager,10000,success,1,0
123,abc,manager,10000,success,2,12:30
123,abc,manager,10000,success,3,14:15
789,tuv,junior,5000,success,1,09:15
注: 最初の行
(123,abc,manager,10000,12:30)
を挿入すると、FileNet レコードが更新
され(123,abc,manager,10000,failure,2,0)
ます。
4 行目
(123,abc,manager,10000,14:15)
で FileNet レコードを更新する必要があり(123,abc,manager,10000,failure,3,0)
ます。
3 行目
(789,tuv,junior,5000,09:15)
は FileNet レコードを更新する必要があり(789,tuv,junior,5000,failure,1,0)
ます。
また、csv ファイルには別の最後の行 (123,abc,manager,10000,15:35) があり、レコードは FileNet で順次更新されるため、FileNet のレコードは更新されません。
要件が明確であることを願っています。私は FileNet 初心者なので、助けてください。