sql 如何将查询结果作为新的列加入到另外的表中?

fateofter_monkey 2015-10-20 03:46:03
如题,原有表1,包括列a,列b

现,select 列1,列2 from 表2

需要将查询结果,也就是列1,列2加入到表1当中,请问如何实现呢?
...全文
12267 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yooq_csdn 2015-10-21
  • 打赏
  • 举报
回复
引用 8 楼 fateofter_monkey 的回复:
多谢大家的回答,我本来以为可以省掉alter table 这一步的,看样子还是不行的啊
不改变表结构是没办法让表多两列的。 只能在结果集里多两列结果
fateofter_monkey 2015-10-20
  • 打赏
  • 举报
回复
多谢大家的回答,我本来以为可以省掉alter table 这一步的,看样子还是不行的啊
中国风 2015-10-20
  • 打赏
  • 举报
回复
ALTER TABLE 表1 ADD [列1] INT ,[列2] INT --定义类型同表2一致
go
INSERT INTO 表1([列1],[列2])
SELECT [列1],[列2] FROM 表2
LongRui888 2015-10-20
  • 打赏
  • 举报
回复
能不能给点数据,然后给出想要的结果
道玄希言 2015-10-20
  • 打赏
  • 举报
回复
如果表1和表2沒关联字段,只是需要顺序的將表2的结果集添加到表1结果集显示出来可以这么做: ;with tb01 as ( select row_number() over(order by 列a) as id, 列a, 列b from 表1 ), tb02 as ( select row_number() over(order by 列1) as id, 列1, 列2 from 表2 ) select t1.列a, t1.列b, t2.列1, t2.列2 from tb01 as t1 left join tb02 as t2 on t1.id = t2.id
道玄希言 2015-10-20
  • 打赏
  • 举报
回复
表1, 表2有通过id关联。 select t1.列a, t1.列b, t2.列1, t2.列2 from 表1 as t1 left join (select id, 列1, 列2 from 表2) as t2 on t1.id = t2.id
qq_17482963 2015-10-20
  • 打赏
  • 举报
回复
引用 2 楼 fateofter_monkey 的回复:
2楼的方法,试过后说“列名或所提供值的数目与表定义不匹配” insert 我印象中是会把数据加到原有列的下面吧,需要做的是让表1多出2列来
你是想要改变表的结构?那你要先在表1多加2列
fateofter_monkey 2015-10-20
  • 打赏
  • 举报
回复
2楼的方法,试过后说“列名或所提供值的数目与表定义不匹配” insert 我印象中是会把数据加到原有列的下面吧,需要做的是让表1多出2列来
无涯大者 2015-10-20
  • 打赏
  • 举报
回复

insert   into 表1(列a,列b) 
select 列1,列2 from 表2
试下这种方式插入。

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧