Sql 检查一大组列的空值

Sql 检查一大组列的空值,sql,oracle11g,Sql,Oracle11g,在我当前的项目(重新设计)中,我的任务是检查一系列即将删除的列是否有数据,这样我们就可以决定是否以及如何将它们迁移到新的和改进的表/列中。这项任务本身不是问题,只是背景 问题是,在总共150列中,大约有30列需要检查。这个表相当大,所以我担心一个链式的select*from表,其中x不为null,y不为null,或者…有点慢 是否有更好或更优雅的方法来检查多个列的空值 建议我只单独检查列,还是分组检查,不必麻烦寻找最佳解决方案?这只是一个表。它将逐个记录读取(全表扫描)并检查标准。这并不慢。无排

在我当前的项目(重新设计)中,我的任务是检查一系列即将删除的列是否有数据,这样我们就可以决定是否以及如何将它们迁移到新的和改进的表/列中。这项任务本身不是问题,只是背景

问题是,在总共150列中,大约有30列需要检查。这个表相当大,所以我担心一个链式的
select*from表,其中x不为null,y不为null,或者…
有点慢

是否有更好或更优雅的方法来检查多个列的空值


建议我只单独检查列,还是分组检查,不必麻烦寻找最佳解决方案?

这只是一个表。它将逐个记录读取(全表扫描)并检查标准。这并不慢。无排序、无连接、无子选择或中间结果。这不会慢的。别担心

顺便说一句:这不应该是从x不为null的表中选择*吗

您希望在任何列中查找包含数据的所有记录,对吗