1

当我尝试将数据从 1 列复制到另一列时出现错误,因为有 2 行具有几乎相同的数据但唯一 ID 不同。我使用 select 语句可以很好地选择要从 train_date 复制到 del_date 列的特定日期,但条件是 where 语句。如何将数据复制到 del 日期,然后删除 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 回答