ALTER TABLE:添加,修改,删除表的列,约束等表的定义。
查看列:desc 表名
修改表名:alter table t_book rename to bbb
添加列:alter table 表名 add column 列名 varchar(30)
删除列:alter table 表名 drop column 列名
修改列名MySQL: alter table bbb change nnnnn hh int
修改列名SQLServer:exec sp_rename't_student.name','nn','column'
修改列名Oracle:lter table bbb rename column nnnnn to hh int
修改列属性:alter table t_book modify name varchar(22)
sp_rename:SQLServer 内置的存储过程,用与修改表的定义。
删除语句:delete from fatie where id not in(select t.id1 from ( (select max(a.id) id1 from fatie a group by a.name)as t))留下的是各组id号最大的,如果留的是最小的话换成min(a.id)就行了
如果没有加上一个中间表t,即这句话 select t.id from去掉直接写成delete from fatie where id not in(select max(id) a.id1 from fatie a group by a.name)mysql会提示错误:You can't specify target table 'fatie' for update in FROM clause (不能先select出同一表中的某些值,再update这个表(在同一语句中)。
参考资料
CSDN.CSDN[引用时间2018-1-9]
1、mysql中修改字段长度:
ALTER TABLE tb_article MODIFY COLUMN NAME VARCHAR(50)
这里的tb_article为表名,NAME为字段名,50为修改后的长度
2、mysql修改字段类型:
ALTER TABLE tb_article MODIFY COLUMN NAME CHAR(50)
修改后,name字段类型由varchar变为char
3、mysql中增加列:
ALTER TABLE tb_article ADD COLUMN name1 VARCHAR(30)
4、mysql中修改列 :
ALTER TABLE tb_article CHANGE name1 name2 VARCHAR(30)
5、mysql中删除列 :
ALTER TABLE tb_article DROP COLUMN name2
一次删除一列表字段
alter table 表名 drop column 列名 其他复制不变
一次删除多列表字段
ALTER TABLE 表名
DROP 列名,
DROP 列名,
DROP 列名,
DROP 列名,
DROP 列名 ...
如果数据多的情况下去 *** 作,耗时很长需耐心
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)