如何解决清理大量数据的最佳方法
我的 Oracle 数据库中有一个巨大的表 - 大约 4000 万行 - 我必须根据某些业务规则检查字段内的所有数据是否正确。
让我们假设这是我的大桌子,规则是:
- 美国只能有 [national_id_type]=NID.. 其他必须是 VISA
- 只有拥有 NA 的美国才能拥有房子.. 拥有 VISA 的其他国籍不能拥有房子
我的想法
我要做的是
case when nationality <> 'US' and NATINAL_ID_TYPE = 'VISA' then '99\US only can have [national_id_type]=NID' ELSE NATINAL_ID_TYPE END as NATINAL_ID_TYPE,case when nationality <> 'US' and NATINAL_ID_TYPE <> 'NA' AND own_house='YES' then '99\US only with NA can own house' ELSE own_house END as own_house
这种方法在 4000 万条记录 X 70 列中检测错误是否有效
我认为这会很慢...
你能帮我提供一些技巧吗?我可以用它来提供可用于性能的仪表板和清理错误
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。