扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
最近要进行导数的工作,从好几张表中导入到一张表,其中数据可能重复,所以在导入之前要进行数据的比对。
方法一:我用group by having count(*)>1将重复的数据提取出来,然后进行人工比对,事实证明,有够笨的!
方法二:请教了一位资深人员,提供了一个更好的方法。就是将三个字段连接起来作为主键,进行数据是否重复的判断。这里值得注意的是某列的值可能为空,所以要赋一个空字符串过去。
select * from t1 where nvl(col1,'')|| nvl(col2,'')|
| col3 not in (select col1||col2||col3 from t2)
然后将不重复的值,插入t2就可以了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者