oracle 面试问题
前几天去面试,遇到2个问题:
1, 有两个大表 A , B
如何取出 A 表有但是B表没有的数据?
2,有一个大表 A ,某一字段 ID 有重复记录,
如何将ID重复的记录删除只保存一笔?
以上问题在平时工作中也会经常遇到,也都解决过,不过数据量都不大(最多的是千万条记录)。
当时考虑到面试的岗位是移动公司的数据挖掘,数据量肯定巨大,一时没想出来什么好的办法。
回答的是: 1 ,用hash 连接进行运算,但是对hash 运算不是很熟悉,没能写出来。
2, 使用 max函数取rowid 关联。
由于都是手写sql,感觉做的不是很好。
各位有什么好的思路,不妨探讨一下,谢谢~