SQL中,如何将表A结构复制到临时表B中,但是临时表B里面有一个新的字段,并且A中的字段未知,怎么做?

 我来答
匿名用户
2013-05-27
展开全部
1> select 1 as newCol,  test_main.*  into #new_tab  from test_main where 1=2
2> go

(0 行受影响)
1> select * from #new_tab
2> go
newCol      id          value
----------- ----------- ----------

(0 行受影响)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qudedong28
2013-05-27 · 超过27用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:73.1万
展开全部
create table B as select * from A;
alter table B add (colName type default ..);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
射手幽灵伊
2013-05-27 · TA获得超过2716个赞
知道大有可为答主
回答量:4955
采纳率:81%
帮助的人:1972万
展开全部
select * into #tmp
from A where 1 = 2

alter table #tmp add new_col data_type
追问
非常感谢,那么再问一下,因为
set @sql='select * into #temp from'+@tableName+' where 1=2';
exec(@sql);
但是这样没有办法获取#temp来进行操作,该怎样写呢?
追答
set @sql='select * into #temp from'+@tableName+' where 1=2';
set @sql= @sql + ' alter table #temp add ..... '
exec(@sql);
如果你放在动态语句里,所有相关的操作都要放在动态语句里。不然取不到临时表。

还有一种方法就是创建全局临时表,就是##temp,这样就可以动态语句内外都可以用。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qong010488
2013-05-27 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:107
采纳率:50%
帮助的人:93.9万
展开全部
咕~~(╯﹏╰)b 我也不懂 我文盲
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式