mysql 复制表去重_MySql排序,去重,表复制,数据导入导出
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 (编辑:92站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |