You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure SQL数据库:为每行新增指定列值不同的行

解决Azure SQL Database批量新增行的问题

别担心,这个需求用INSERT INTO ... SELECT语句就能轻松搞定,正好适配Azure SQL Database的环境,能帮你快速把现有4行扩展到8行。

核心解决方案

假设你的表名为TargetTable,包含的列有Tag、ADUser以及其他需要保留原值的列(比如ColumnA、ColumnB等),你可以执行以下SQL语句:

INSERT INTO TargetTable (Tag, ColumnA, ColumnB, ADUser)
SELECT Tag, ColumnA, ColumnB, 'manju@apac.corpdir.net'
FROM TargetTable;

语句逻辑说明

  • INSERT INTO指定要插入数据的表和列列表(注意:除了ADUser,其他列要和原表保持一致,确保所有需要保留原值的列都被包含)
  • SELECT部分从原表读取每一行的数据,将ADUser的值替换为你指定的'manju@apac.corpdir.net',其余列直接复用原行的值
  • 执行后,原表的每一行都会被复制一份,仅ADUser列值不同,正好实现4行变8行的需求

关键注意事项

  1. 主键处理:如果你的表有自增主键(IDENTITY列),不需要在INSERT的列列表中包含它,Azure SQL Database会自动为新行生成唯一的主键值。
  2. 唯一约束检查:如果表中存在ADUser与其他列组合的唯一约束(比如Tag + ADUser是唯一键),由于新行的ADUser和原行不同,不会触发约束冲突,可以放心执行。
  3. 列名替换:请将示例中的TargetTable、ColumnA、ColumnB替换为你实际的表名和列名,确保所有非ADUser的列都被正确包含在语句中。

验证结果

执行完语句后,你可以用以下命令确认行数是否符合预期:

SELECT COUNT(*) AS TotalRows FROM TargetTable;

返回的TotalRows应该为8。

内容的提问来源于stack exchange,提问作者Manjunath Rao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 17:03:02