加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

mysql 复制表去重_MySql排序,去重,表复制,数据导入导出

发布时间:2022-10-13 15:00:17 所属栏目:MsSql教程 来源:转载
导读: 序列:
MySQL 序列是一组整数:1, 2, 3, ...,由于一张数据表只能有一个字段自增主键, 如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现。
Create table insect(ID int UNS

序列:

MySQL 序列是一组整数:1, 2, 3, ...,由于一张数据表只能有一个字段自增主键, 如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现。

Create table insect(ID int UNSIGNED NOT AUTO_INCREMENT) #engine=innodb auto_increment=100charset=utf8;

table中就会生成一自增的列 id 默认是从1开始自增, 也可以设置起始值,

数据去重

可以在 MySQL 数据表中设置指定的字段为PRIMARY KEY(主键)或者UNIQUE(唯一)索引来保证数据的唯一性。

如果我们设置了唯一索引,那么在插入重复数据时,SQL 语句将无法执行成功,并抛出错

INSERT IGNORE INTO 与 INSERT INTO 的区别就是 INSERT IGNORE 会忽略数据库中已经存在的数据,如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据。这样就可以保留数据库中已经存在数据,达到在间隙中插入数据的目的。INSERT IGNORE INTO,执行后不会出错,也不会向数据表中插入重复数据:

统计重复SELECT COUNT(*)asrepetitions,last_name,first_name #选择可能会重复的列

->FROM person_tbl->GROUP BY last_name,first_name->HAVING repetitions>1; #重复一次以上的数据

过滤重复的数据:

SELECT DISTINCT last_name,first_nameFROM person_tbl;

删除重复数据

CREATE TABLE tmp SELECT last_name,first_name,sex FROM person_tbl GROUP BY (last_name,first_name,sex);

DROP TABLE person_tbl;

ALTER TABLE tmp RENAME TO person_tbl;

先讲person_tab 排序去重后复制给tmp 然后删除person_tab 然后将tmp改名

复制整张表

复制MySQL的数据表,包括表的结构,索引,默认值等

使用SHOW CREATE TABLE命令获取创建数据表(CREATE TABLE) 语句mssql复制表,该语句包含了原数据表的结构,索引等。

复制以下命令显示的SQL语句,修改数据表名,并执行SQL语句,通过以上命令 将完全的复制数据表结构。

如果你想复制表的内容,你就可以使用INSERT INTO ... SELECT语句来实现。

MySql数据导出 以逗号隔开 双引号标值 (CSV格式)

SELECT *FROM passwd INTO OUTFILE '/tmp/runoob.txt' FIELDS TERMINATED BY ','ENCLOSED BY '"' LINES TERMINATED BY '\r\n';

导出数据作为原始数据

mysqldump -u root -p --no-create-info \ --tab=/tmp RUNOOB runoob_tbl #--tab 是用来指定导出文件的目录

password ******

将数据库备份到其它主机库中

mysqldump -u root -p database_name table_name >dump.txt #将数据库导入到到dump.txt文件中

mysql -u root -p database_name

在目标主机上执行mysql -uroot -p123456 < runoob.sql

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!