使用 PK 反馈循环复制行

2023-12-23

鉴于以下情况(表1):

Id    Field1  Field2     ...
--    ------  -------
NULL  1        2
NULL  3        4
...

我想将 Field1 和 Field2 的值插入到另一个表(Table2)中。 Table2 有一个自增整数主键。我想从表 2 中检索新的 PK 并更新上面的 Id 列(表 1)。

我意识到这并不传统——这不是我需要定期做的事情,只是为了一些迁移工作而一次性做的事情。我做了一些尝试INSERT INTO, OUTPUT, INSERTED.Id,但失败了。 “环回”到 Table1 中的 PK 必须与插入的 Field1/Filed2 的值相关联。


您应该只能执行插入,然后删除并重新插入。

create table t1
( id int, f1 int, f2 int);

create table t2
( id int primary key IDENTITY , f1 int, f2 int);

insert into t1 (id, f1, f2) values (null, 1, 2);    
insert into t1 (id, f1, f2) values (null, 3, 4);
insert into t1 (id, f1, f2) values (null, 5, 6);
insert into t1 (id, f1, f2) values (null, 5, 6);

insert into t2 (f1, f2) 
select f1, f2 from t1 where id is null;

delete t1 
  from t1 join t2 on (t1.f1 = t2.f1 and t1.f2 = t2.f2);

insert into t1
select id, f1, f2 from t2;

select * from t1;

请参阅此示例SQLFiddle http://sqlfiddle.com/#!3/2e630/1.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PK 反馈循环复制行 的相关文章

随机推荐

  • 在 Google App 脚本中共享日历

    我正在尝试从电子表格构建日历 然后与域内的适当人员共享它们 我将其作为附加到电子表格的脚本来执行 到目前为止 我可以读取正确的单元格并构建包含事件的日历 但我遇到的问题是弄清楚如何与正确的人共享特定的日历 我四处搜索并找到了相同的通用代码来
  • 尝试对“$(MSBuildVersion)”进行数字比较,结果为“”而不是数字,条件为“$(MSBuildVersion) >= 16.1.0”)”

    当我尝试重新加载已卸载的项目时 出现此错误 如下图所示 它说这条线来自我的Microsoft Managed Core targets 我尝试更新我的 NuGet 包 我尝试将环境变量路径值更改为 msbuild exe 所在的位置 我尝试
  • 内层div的边距影响外层div

    我有三个嵌套的 DIV 元素 如下所示 div div div This br is br a br multiline br testcase br This br is br a br multiline br testcase br
  • 减少可执行文件大小的过程

    我正在生成一个在 ARM 处理器上运行的十六进制文件 我希望将其保持在 32K 以下 它目前比这个大得多 我想知道是否有人可以提供一些关于缩小它的最佳方法的建议 这是我到目前为止所做的 因此 我对其运行 size 以确定十六进制文件有多大
  • 逗号附近的语法不正确

    这是我尝试从会话中获取多个值时的 ASPX 代码片段 我收到错误 逗号附近的语法不正确 在代码片段中标记了该行 SqlCommand cmd1 new SqlCommand select plugin id from profiles pl
  • 根据 PEP257 自动检查文档字符串样式的工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 类似的工具pep8 http pypi python org pypi pep8可以检查源代码样式 但他
  • Kotlin 的构造函数重载

    因为我有一个User类有 2 个参数 first name last name 所以我的 kotlin 类是 data class User val first name String val last name String 现在我想要一
  • 高频调用 std::async 可以吗?

    我写了一个小程序 使用std async对于并行性 它让我崩溃了 我很确定有更好的方法可以做到这一点 但现在我只想知道这里发生了什么 我不会发布确切的代码 因为我认为它不会真正产生影响 它基本上看起来像这样 while 1 std vect
  • 如果文件已存在于 pyspark 中,如何覆盖 rdd saveAsPickleFile(path)?

    如何覆盖 当我们节省时间时 RDD 输出对象任何现有路径 test1 975078 56691 2 000 20171001 926 570 1322 975078 42993 1 690 20171001 926 570 1322 975
  • 询问如何在 R 中使用 ggplot 制作世界热图?

    我想制作特定疾病的世界热图 该数据集包含国家 地区列表 纬度 经度和每个国家 地区的案例 数据可用here https drive google com file d 1 EqMEZFHlujsg40gzEo83dN1zY9d9gAJ vi
  • C 中整数表达式的大小

    令我惊讶的是 Xcode 编译 C gnu11 include
  • Magento EAV:如何硬删除属性值?

    在进入细节之前 让我们先问清楚这个问题 有没有办法hard删除属性value来自产品 By hard我的意思是 从数据库中删除该行 而不仅仅是将值设置为 null 或空 现在 详细信息 我目前在 Magento 上遇到一个问题 我商店中的许
  • 有没有一种方法可以在没有 xml 或属性文件的情况下在应用程序上下文中存储 java 变量/对象

    我想在 Spring Boot 应用程序的应用程序上下文中存储特定变量 字符串或对象 但我不想使用 xml 或属性文件来存储它 将有一个函数将数据存储在应用程序上下文中 我应该能够检索它 修改它 删除它或添加更多数据 基本上我想在初始化完成
  • 耦合常微分方程的龙格库塔

    我正在 Octave 中构建一个函数来解决N耦合常微分方程类型 dx dt F x y z t dy dt G x y z t dz dt H x y z t 使用这三种方法中的任何一种 Euler Heun 和 Runge Kutta 4
  • 如何在电子表格的 Google Apps 脚本中使用数组作为自定义函数的参数

    我正在尝试使用脚本编辑器在我的谷歌电子表格中创建自定义函数 我似乎无法允许用户为函数提供一个数组作为参数 当我像这样进行硬编码时 我的脚本可以工作 var values SpreadsheetApp getActiveSheet getRa
  • Plotly:如何自定义图例?

    我已经自定义了使用plotly绘制的数据点的颜色 数据点的颜色是根据与其关联的标签指定的 不过设置之后legend True所有三种颜色 在字典中定义 都不会显示在图中 我想 a rgb 147 112 219 the actual col
  • iOS PhoneGap 构建失败

    我是新来的PhoneGap适用于 iOS 和 Xcode 我的应用程序在 Android 手机上运行良好 但遇到了问题 我能够在 iOS 模拟器中构建并运行该应用程序 但是当我将其存档以在设备上进行测试时 出现以下错误 我到处搜索但找不到有
  • JQuery Mobile,整个网站的一个页脚片段

    I m not询问如何获得固定页脚 我有一个多页和单页的结构 我想知道如何在整个网站中仅使用一个 html 片段 我真的在寻找一种解决方案 因为我想仅在一个位置编辑页脚并在所有页面中查看修改 Thanks 编辑 我正在开发一个用 Phone
  • 为什么 VisualVM 探查器中没有显示所有方法?

    我在用VisualVM看看我的应用程序在哪里慢 但它并没有显示所有方法 可能没有显示所有延迟应用程序的方法 我有一个实时应用程序 声音处理 并且有几百微秒的时间不足 有没有可能VisualVM隐藏本身速度很快的方法 UPDATE 1 我通过
  • 使用 PK 反馈循环复制行

    鉴于以下情况 表1 Id Field1 Field2 NULL 1 2 NULL 3 4 我想将 Field1 和 Field2 的值插入到另一个表 Table2 中 Table2 有一个自增整数主键 我想从表 2 中检索新的 PK 并更新