首先问下.你会哪种导入手段.再之.你会哪种导出方法.然后,按你会的操作呗.
创新互联是一家专业提供闽侯企业网站建设,专注与成都做网站、成都网站设计、html5、小程序制作等业务。10年已为闽侯众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
2个数据库是不是同在本地,还是一个本地一个远程?navicat自带数据导入向导,按那个操作就是.
表名不同没关系.字段不统一的话,要在导入时选下映射关系,不然就只有把远程的表下到本地来.
再用insert
into
目标表(字段1,....字段n)
select
a,b,c,d,...n
from
源表的方式写入.
直接先用union all合并所有的表,再包一层select语句,将合并表作为子表查询,加where条件即可,如果记录重复,可以加distinct关键字去重。
你建表复制就可以了,例如CREATE TABLE aa AS SELECT * FROM tree;这是完全复制tree表的数据及表结构到aa表中。假如要复制某些字段的话,如:insert into 表名user(表中字段sal) select sal from emp;插入某一列sal到user表中,从emp表中获取sal的数据信息。最后提醒下,Oracle和MySql复制表建表 一样,可以自己建表结构,再复制数据;也可以复制部分列和部分数据,分开操作。 但要保证数据类型一致,插入指定列数,列数要相同,列的长度空间大就可以了。
方法有很多,这里介绍两种
方法一、
如果要保留id的最小值,例如:
数据:
执行sql:select count(*) as count ,name,id from ceshi group by name
amp;lt;img
最后要删除的sql为:delete from ceshi where id not in (select count(*) as count ,name,id from ceshi group by name)
如果想保留id的最大值:
简单的办法是:delete from ceshi where id not in (select count(*) as count ,name,id from (select * from ceshi order by id desc) group by name)
如果想要删除的是两个列里面对应相同的数据,也就是说表里面有两条记录的name都是admin,要是只想保留其中一条的话,order by 的时候增加一个值即可,例如:
delete from ceshi where id not in (select count(*) as count ,name,id from ceshi group by name,email)
方法二、
只需要把你这张表当成两张表来处理就行了。
DELETE p1 from TABLE p1, TABLE p2 WHERE p1.name = p2.name AND p1.email = p2.email AND p1.id p2.id;
这里有个问题,保留最新的那一条(也就是ID最小的那个)
上面的的语句,p1.id p2.id,所以获取到的是id最大的,因为p1.id小于p2.id就会被删除,只有最大的值不满足。如果要获取id最小的那个,只需要把''改成''即可。
当然是用group by,count可以更精准控制重复n次的情况。
delete
from
dede_archives
where
[标题]=[标题]
and
[作者]=[作者]这个应该是不行的。我是要把重复的删除。但是要保留一条。比如有两篇文章。他们的作者
和标题相同的。那么这一般是重复的文章。所以我想把一篇删除。保留一篇。因为数据比较多。所以要用sql语句执行。大家帮忙想想怎么弄。是dedecms
里面主键盘应该只是id号码。大家帮忙一下啊。