繁体   English   中英

在Oracle SQL中找到每行中Null的百分比

[英]Find the percentage of Nulls in each row in Oracle SQL

全部,请帮助此查询。 我需要按用户和部门按丢失值的数量和每行中的空值百分比查询几张表以获取用户信息。 员工需要在系统中注册此信息。 基本上,我们需要报告员工已将缺少的值反馈给系统。 例如; 查询结果

COL_1  |COL_2  |COL_3 |COL_4 |count  %   d%
----------------------------- ------------
 user1 | dept1 | NULL |   X  |1      50      
 user2 | dept2 | NULL | NULL |2      100
 user3 | dept1 |   X  |   X  |0      0
 user4 | dept2 | NULL |   X  |1      50

感谢您能否帮助我进行此查询。 谢谢。

SELECT t.*,
       NVL2( COL_3, 0,  1 ) + NVL2( COL_4, 0,  1 ) AS "Count %",
       NVL2( COL_3, 0, 50 ) + NVL2( COL_4, 0, 50 ) AS "d%"
FROM   table_name t
  SELECT a.col_1
       , a.col_2
       , COUNT (*) "count"
       , SUM (CASE WHEN a.col_3 IS NULL THEN 1 ELSE 0 END) / COUNT (*) * 100 "d%"
    FROM table1 a
GROUP BY col_1, col_2;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM