A. sql 如何过滤重复记录

问题背景

在一个多表查询的sql中正常情况下产生的数据都是唯一的,但因为数据库中存在错误(某张表中存在相同的外键ID)导致我这边查询出来的数据就会有重复的问题

下面结果集中UserID:15834存在多个

参考:

MSDN: OVER 子句 (Transact-SQL)

stackoverflow sql query distinct with Row_Number

SQL Trick: row_number() is to SELECT what dense_rank() is to SELECT DISTINCT

B. 导入oracle数据库时如何过滤具体的表 imp ....

方法一:用imp的exclude参数排除表,比如要排除的表为aaa表和bbb表,则imp xxx/xx@xxxx exclude=table:"in ('aaa','bbb')" file=xxxxxxx
方法二:在导入的目标内库里建几个表容名相同的你要过滤的表,然后导入。oracle会过滤这几张表,然后删掉就是。
方法三:imp的 tables=(xxx,xxx,xxx)参数里列出所有不过滤的表,语句就不要我写了吧。。。