怎么将从oracle数据库中已导出的dmp文件中的某个表中的符合条件的数据导入到数据库中同样结构的表中。

也就是说怎么将oracle中导出的dmp文件中的A表中符合条件的记录导入到数据库中的A表中。请教高手SQL语句怎么写!!

进一步细化你的情况:你的目标表的表结构与dmp文件中的表的表结构相同,目标表已经存在数据,目标表与dmp文件中的表表名可能相同也可能不同。
建议使用两个步骤:

1、把dmp中的表导入数据库时使用参数remap_table=dmptablename1:newtablename1,dmptablename2:newtablename2的方式导入到你指定的表中。
2、insert into targettablename1 select * from newtablename1 where ....;
insert into targettablename2 select * from newtablename2 where ....;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-01
imp 管理员用户/密码@数据库名 fromuser=原数据用户名 to
user=要导入数据的用户名 file=f:\XXX.DMP ignore=y tables=(cb_general)
ps:
ignore=y
如果表已经创建,那么用y
tables代表要恢复的表名追问

大哥你是不是没有看懂我的意思!

追答

这个好像只有在进行单表导入可以进行筛选 目前oracle还没有这种功能吧

本回答被网友采纳
第2个回答  2013-01-31
imp 用户/密码 file=E:\j.dmp ignore=y full=y追问

我只是想把某个表中的符合条件的记录导入到数据库中的表中,不是所有表,也不是该表的所有记录,导入的记录是有条件的!!!

第3个回答  2013-02-01
query在到出时用。query=’
where deptno=10’你是想在导入时达到这种效果。
可惜imp貌似没有追问

那有什么好的办法吗!!