sql,如何在同一个表中复制一条记录?

我有一个表a,里面有很多个字段(id,b,c,d.....n)其中,id是主键.现在想在同一个表中复制一条记录,并改写其中一个字段(b)的值,如果这个记录已经存在,则不复... 我有一个表a,里面有很多个字段(id,b,c,d.....n)其中,id是主键.现在想在同一个表中复制一条记录,并改写其中一个字段(b)的值,如果这个记录已经存在,则不复制(用字段c来判断).假如,原始记录中,b=1,c=10.复制后的记录为b=2,而其他字段(id除外)的值不变.但是,如果已经存在b=2,c=10这一条记录,则不复制. 问sql表达式应该怎样写? 展开
 我来答
FrancisGaozhu
2017-11-15 · 知道合伙人软件行家
FrancisGaozhu
知道合伙人软件行家
采纳数:492 获赞数:8942
国家认证高级软件工程师 软件研发技术讲师

向TA提问 私信TA
展开全部
第一,什么数据库?
第二,我如何理解你所谓的“复制”?
请将必要的问题阐述完整;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DoramiHe
2017-10-27 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
insert into tablename (这里列出除了ID的所有列) (select 这里列出除了ID的所有列 from tablename where id = 指定复制的ID)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心想事成你明白
2017-04-24
知道答主
回答量:36
采纳率:0%
帮助的人:17.1万
展开全部
insert into good select NULL,a,b,c,d,e,f,g,h,i,j,k,l,m,n from good where id='复制的id';
其中NULL代表id占位
ABCD... 代表字段名.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
程岚飞
2016-07-19 · TA获得超过101个赞
知道答主
回答量:40
采纳率:0%
帮助的人:5.1万
展开全部
insert into a select '','2',c,d......,n from a where id='要复制的id';
其中select后 第一个单引号是id的占位,必须要有,id是自动增量的,接着是id后面的字段,以此类推,到最后一个字段n。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-28
展开全部
insert into a select id,'2',c,........ from a where b='1'and c='10'注意要改动什么值的话,只需将Select 查询改一下就可以了.如果iD是自动增长列,你就可以把它给去掉还有.一定要按顺序哟!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 7条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式