栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将标识列值从另一个表插入表?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将标识列值从另一个表插入表?

您可以使用该

output
子句。从文档(重点是我的):

OUTPUT子句从受INSERT,UPDATe,DELETE或MERGE语句影响的每一行返回信息或基于表达式的信息。这些结果可以返回给处理应用程序,以用于诸如确认消息,归档和其他此类应用程序需求之类的事情。
结果也可以插入到表或表变量中。
此外,您可以在嵌套的INSERT,UPDATE,DELETE或MERGE语句中捕获OUTPUT子句的结果,然后将这些结果插入目标表或视图中。

像这样:

create table #tempids (a int) -- a temp table for holding our identity valuesinsert into #test (b,c) **output inserted.a into #tempids** -- put the inserted identity value into #tempidsvalues ('bvju','hjab')

然后你问…

如果插入内容来自选择内容,该怎么办?

它的工作方式相同…

insert into #test (b,c) output inserted.a into #tempids -- put the inserted identity value into #tempids**select** -- except you use a select here**Column1,Column2from SomeSource**

无论是从值插入,派生表,execute语句,dml表源还是默认值,其工作方式都相同。
如果您插入1000条记录,则会在中获得1000个ID

#tempids



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/375304.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号