是否有PL / SQL函数,它允许传递一个表名并返回所有列的计数,这些列不包含空值?
我有大量的列,不想查询每一列。我是PL / SQL的新手,非常感谢你的帮助。
答案 0 :(得分:0)
在对问题的评论中,解决此问题的一种方法是以下查询:
SELECT t.table_name,
t.num_rows,
c.column_name,
c.num_nulls,
t.num_rows - c.num_nulls num_not_nulls,
c.data_type,
c.last_analyzed
FROM all_tab_cols c
JOIN sys.all_all_tables t ON c.table_name = t.table_name
WHERE c.table_name LIKE 'EXT%'
AND c.nullable = 'Y'
GROUP BY t.table_name,
t.num_rows,
c.column_name,
c.num_nulls,
c.data_type,
c.last_analyzed
ORDER BY t.table_name,
c.column_name