导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

这个怎么写:把查询结果插入到表中

wuan 2003-12-09 08:31:30
小弟刚接触存储过程,碰到一问题,还请各位老大帮帮忙:-)
把一个表中id=1的列复制为id=0(id 不是该表的关键字)
...全文
47 点赞 收藏 15
写回复
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuan 2003-12-10
多谢各位,用
insert into
select
from
解决,
呵呵,连存储过程都不用写了,真好,
结贴了
回复
--例子:
--数据测试环境
create table tb1(id int,name varchar(10))
insert into tb1 values(1,'aa')
insert into tb1 values(1,'bb')
insert into tb1 values(2,'aa')

--复制
insert into tb1(id,name) select 0,name from tb1 where id=1

--显示结果
select * from tb1

go
--删除测试环境
drop table tb1

/*--测试结果
id name
----------- ----------
1 aa
1 bb
2 aa
0 aa
0 bb

(所影响的行数为 5 行)
--*/
回复
--这句就行啦.
insert into tb1(id,name) select 0,name from tb1 where id=1
回复
baiyga 2003-12-10
select * into #temptable from table

插入到临时表中
回复
dlpseeyou 2003-12-10
insert 另一个表(id) select 0 from 表名 where id = 1
回复
pengdali 2003-12-10
insert 表 (id,其他列) select 0,其他列 from 表 where id=1
回复
sunshareforever 2003-12-10
insert into tbl(id,name)

select '0',name from tb1 where id =1


呵呵!这个结果不知你满意否?
回复
liujinchang 2003-12-09
你用Update语句更新不可以吗,Update tb1 Set id = 0 Where id = 1
回复
wuan 2003-12-09
是这样的,把select @name=name from tbl where id=1
得到的记录insert into tbl(id,name) values(0,@name)
表是同一张表,“id”也不是这一张表的关键字,而是外关键字
回复
DigJim 2003-12-09
是不是新增一个字段id2,用来纪录!

ALTER TABLE 表 ADD id2 int NULL
GO
update 表 set id2=0 where id=0
go

大家都看不大懂你的意思!!
回复
wuan 2003-12-09
直接操作完数据库就好了,不用返回什么
回复
wuan 2003-12-09
不是更新,因为原来的数据还要留着,呵呵,
效果倒和更新差不多
回复
kunp 2003-12-09
把一个表中id=1的列复制为id=0(id 不是该表的关键字)??
更新吧。


update 表名 set id = 0 where id = 1

这行代码可将所有id为1的记录的id更新为0。不知道是不是你想要的结果。
回复
txlicenhe 2003-12-09

1: update 表 set id = 0 where id = 1
还是
2: insert 另一个表(id,其它字段) select 0,其它字段 from 表 where id = 1

回复
realgz 2003-12-09
看不懂
如果是存储过程的返回结果是
insert into [table] exec [procedure]
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告