SQL语句(复制⼀张表和更新表)
sql语句复制⼀张表
1、复制表结构及数据到新表
CREATE TABLE新表SELECT * FROM旧表
这种⽅法会将oldtable中所有的内容都拷贝过来,当然我们可以⽤delete from newtable;来删除。
不过这种⽅法的⼀个最不好的地⽅就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要⾃⼰⽤”alter”添加,⽽且容易搞错。
2、只复制表结构到新表
CREATE TABLE新表SELECT * FROM旧表WHERE1=2或CREATE TABLE新表LIKE旧表
3、复制旧表的数据到新表(假设两个表结构⼀样)
INSERT INTO新表SELECT * FROM旧表
4、复制旧表的数据到新表(假设两个表结构不⼀样)
INSERT INTO新表(字段1,字段2,.......) SELECT字段1,字段2,...... FROM 旧表
5、这样会将旧表的创建命令列出。我们只需要将该命令拷贝出来,更改table的名字,就可以建⽴⼀个完全⼀样的表
show create table旧表;
update更新表
1、set⼀个字段(把表student中的sname改为’张三’,条件是学号是13的,不加where条件的会把sno字段全改了)
update stutest t set t.Sname ='张三'where sno='13'
2、set⼀个字段(把表student中的sname改为’张三’ sage改为’22’,条件是学号是13的,不加where条件的会把sno字段全改了)
update stutest t set t.Sname ='张三',t.Sage ='22'where sno='13'
3、set null值(把表student中的sname改为null sage改为null,前提是字段要允许为空。条件是学号是13的,不加where条件的会把sno 字段全改了)
update stutest t set t.ssss =null,t.aaaa =null where sno='13'
sql语句替换表中内容
4、将stu1表中的⼀些数据更新到stu2表中.(stu1表和stu2表的字段名称可以不同)
update stu1 t,stu2 tt set tt.Sno = t.Sno,tt.Sname = t.Sname,tt.Ssex = t.Ssex,tt.Sage = t.sage,tt.Sdept = t.sdept where t.Sno=tt.sno

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。