1

ほぼ同じデータで一意のIDが異なる2つの行があるため、1つの列から別の列にデータをコピーしようとするとエラーが発生します。ここでは、train_dateからdel_date列にコピーする特定の日付を選択するために正常に機能するselectステートメントを使用しましたが、whereステートメントの条件を使用しました。データをdeldateにコピーしてから、train_date行を削除するにはどうすればよいですか。ありがとう

update dbo.Comp d
  set d.del_date =  t.train_date 
  (
   SELECT d.unique_id as delUnique
      ,t.unique_id  as TraUnique
      ,d.del_date as delDelDate
      ,t.del_date as traDelDate
      ,d.train_date as delTrainDt
      ,t.train_date as traTrainDt

  FROM dbo.Comp d 
  inner join dbo.Comp t on d.g_id = t.g_id 
  where t.del_date = d.train_date
  and t.unique_id <> d.unique_id
  order by d.og_id, d.g_id
4

1 に答える 1

1

これを試して、

update d
set d.del_date =  t.train_date 
FROM dbo.Comp d 
inner join dbo.Comp t on d.g_id = t.g_id 
where t.del_date = d.train_date
and t.unique_id <> d.unique_id
于 2013-02-08T15:55:14.297 に答える