复制具有新ID的行和相关表行

  • 本文关键字:ID 复制 sql
  • 更新时间 :
  • 英文 :


我有两个表,schedulescheduleEvent。这是一对多关系。我想用新的scheduleID复制schedule的行,但也用新的shceduleEventID复制shceduleEvent的每个相关行,所有这些都基于请求。

主要目标是将schedule/scheduleEvent从一个设备复制到另一个设备;唯一会改变的是设备。

有人能帮帮我吗?谢谢。

我假设schedule和scheduleevent表与schedule id相连接。在下面的查询中,我选择了所有具有新id的时间表和时间表事件…(请忽略打字或格式,因为我是通过电话回答的)

获取具有新id的调度表:

with newschedule as (
select *, row_number() over( order by sheduleid) newscheduleid from schedule),
newsheduleevent as ( select *,  row_number() over (order by sheduleeventid)  newscheduleeventid, ns.newscheduleid
from scheduleevent se nner join newschedule ns on se.sheduleid=ns.scheduleid)
select * from newschedule

使用new newscheduleeventid获取newscheduleevent:

with newschedule as (
select *, row_number() over( order by sheduleid) newscheduleid from schedule),
newsheduleevent as ( select *,  row_number() over (order by sheduleeventid)  newscheduleeventid, ns.newscheduleid
from scheduleevent se nner join newschedule ns on se.sheduleid=ns.scheduleid)
select * from newscheduleevent

最新更新