MySQL初始4--去重
更新表中的字段:
update 表名 set 字段=新值,… where 条件;
UPDATE语法可以用新值更新原有表行中的各列。SET子句指示要修改哪些列和要给予哪些值。WHERE子句指定应更新哪些行。如果没有WHERE子句,则更新所有的行。如果指定了ORDER BY子句,则按照被指定的顺序对行进行更新;LIMIT子句用于给定一个限值,限制可以被更新的行的数目。
查看所创建表的创建命令:show create table table——name; 可以查看表table_name的创建命令
复制表:
方法1.a.创建表结构:create table tmp
b.将目标表的所有内容插入到tmp 中:insert into tmp select * from companiesList;
方法2:直接用as 创建:create table tmp as(select * from companiesList);
mysql表去重:
思路1):直接删除:
delete from tmp
-> where companyName in (select companyName from companiesList group by companyName having count(companyName) > 1)
-> and companyId not in (select min(companyId) from companiesList group by companyName having count(companyName) >1);
这两处的表名称不一样是因为,没办法在同一张表下进行删除操作,所以要引入另外的表
思路2):插入新表:
1.创建临时表,将所有重复的字段放入临时表中:create table tmp as(select * from table group by companyName having count(companyName)>1)
2.去除原表中所有重复的字段:delete table from tm,table where tmp.companyName = table.companyName;
3.将零食表中的内容导入到原表中:Insert into table select * from tmp;
思路3):distinct命令:SELECT DISTINCT字段名FROM表名
查看重复项:select companyName,count(*)as count from tmp group by companyName having count>1;
mysql中重复项修改(复杂方法):
1.查找出重复项:
select * from tbArticle
where sn in (select sn from tbArticle group by title having count(title) > 1);
2.将所有的重复项复制到TXT文件中 a.txt
3.用excel表格打开a.txt文件
4.将表格中所需要的字段挑选出来
5.批量组织所需要更新的状态语句
6.将数据库进行更新
7.再一次进行状态更新
8.检查重复项