mysql怎么删除已经建好的表中的一列?

 我来答
五个爪子抓妈拐
推荐于2019-10-11 · TA获得超过2.3万个赞
知道大有可为答主
回答量:162
采纳率:100%
帮助的人:4.7万
展开全部

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]

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式