比较配置单元表时如何计算记录的百分比?

时间:2019-02-05 21:44:55

标签: sql hadoop hive

有两个名为table1和table2的Hive表。我得到了这两个表的计数。我用表1和表2中的不匹配记录创建了一个名为abc的第三个表。如何获得表abc中的记录数与表1和表2的总计数相比的百分比?

  1. 从表1 A中选择计数(*)
  2. 从表2 B中选择count(*)
  3. 将表dbo.abc创建为 从表A中选择A.column1,A.columnb 内部联接表B 其中A.column3 <> B.column3

  4. 如何获取表abc中记录的百分比? 例如:abc中的count(*)                -------------------- 100                从A + B计数(

预期输出为: 例:   number_of_non_matching_records = 20%

1 个答案:

答案 0 :(得分:0)

您是否要一口气做到这一点?

select count(*) as combos_in_ab,
       sum(case when a.column3 <> b.column3 then 1 else 0 end) as combos_in_3,
       avg(case when a.column3 <> b.column3 then 1.0 else 0 end) as percent_in_3
from a cross join
     b;