在SQL SERVER的表中,如何实现部分记录的复制?

现有SQLSERVER的数据表(jjtask),jjtask有以下字段:name(姓名),number(数量),month(月份).需要从表中取出6月份的数据,再把这些数... 现有SQL SERVER的数据表(jjtask),
jjtask有以下字段:name(姓名),number(数量),month(月份).
需要从表中取出6月份的数据,再把这些数据的月份改为7月,再保存回表jjtask.
请问:该SQL语句如何实现?
这里有2部分的数据,6月份的数据不变,还是有的;
7月份的数据是从表中取出6月份的数据,再把这些数据的月份改为7月,再保存回表jjtask。
是否需要个临时表什么的??
展开
 我来答
samer_x
2015-08-23 · TA获得超过482个赞
知道小有建树答主
回答量:407
采纳率:85%
帮助的人:161万
展开全部
1、使用SQL server management studio 连接数据库。
2、选择指定数据库鼠标右键,选择“任务”中的“导出数据”。
3、根据导入和导出向导的提示进行设置,数据源选择需要导出的数据库,目标选择“平面文件目标”和设置文件路径。
4、选择需要导出的数据表或编写需要导出数据的查询SQL,最后完成向导即可复制出你需要的数据。
5、在其他数据库里面执行生成的SQL脚本就可以导入对应的数据。
奔驰M888
2009-07-24 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1846
采纳率:0%
帮助的人:2704万
展开全部
updaete jjtask set month=dateadd(mon,1,month) where datediff(mon,month,'6月份的第一天')=0;

说明:因为我不知道你的表中存的数据是哪一年的,所以写了【'6月份的第一天'】,你根据你的情况写上去即可,如:'2009-06-01'代表2009年6月份的第一天。

**************************
补充:
如果是保留6月份的数据的话,用下面的方法,不用临时表

insert into jjtask select(name,number,dateadd(mon,1,month)) where datediff(mon,month,'6月份的第一天')=0;

说明:【'6月份的第一天'】解释同上。

---
以上,希望对你有所帮助。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a800768
2009-07-24 · TA获得超过1841个赞
知道大有可为答主
回答量:1928
采纳率:0%
帮助的人:1726万
展开全部
先把六月份的数据查出来放到临时表#a 中
select * into #a from jjtask where month=6

把临时表中的月份改为7月
update #a set month=7

再把临时表里的数据插到原表中
insert jjtask select * from #a

最后删除临时表
drop table #a
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
terrymoone
2015-08-14 · TA获得超过5433个赞
知道大有可为答主
回答量:4520
采纳率:41%
帮助的人:1662万
展开全部
部分记录的话,只要在where里添加限制条件就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
csuxp2008
2009-07-24 · TA获得超过6485个赞
知道大有可为答主
回答量:4704
采纳率:50%
帮助的人:2464万
展开全部
update jjtask
set month=7
where month=6;

不知道你这表中month字段是否为整形?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式