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

mysql怎么删除已经建好的表中的一列,第1张

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]

一次删除一列表字段

alter table 表名  drop column 列名    其他复制不变

一次删除多列表字段

ALTER TABLE 表名

DROP 列名,

DROP 列名,

DROP 列名,

DROP 列名,

DROP 列名 ...

如果数据多的情况下去 *** 作,耗时很长需耐心

这个需要分情况。

1,你的数据库表中有主键,且主键上面的数据为唯一值。也就是没有重复值。

那么你在删除的时候,将这个唯一值作为条件进行删除。

如:

delete

from

[表名]

where

id=1

2.所有的数据相同,那么你只能打开数据表,手工选定其中某一条,进行删除。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7212034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存