Hive 配置单元中每行的百分比计算

Hive 配置单元中每行的百分比计算,hive,percentage,Hive,Percentage,我在配置单元中有一个具有以下模式的表 (差分int,计数值int) 这些值是 5 2, 30 1, 90 1, 100 1 现在我想用count_值的和来计算每个count_值的百分比。类似于每行的count\u value/sum(count\u value)。谁能帮忙吗。提前感谢首先使用子查询计算总计,然后将总计加入每一行如何 SELECT count_value / count_value_sum AS p FROM myTable t JOIN (SELE

我在配置单元中有一个具有以下模式的表 (差分int,计数值int) 这些值是 5 2, 30 1, 90 1, 100 1


现在我想用count_值的和来计算每个count_值的百分比。类似于每行的count\u value/sum(count\u value)。谁能帮忙吗。提前感谢

首先使用子查询计算总计,然后将总计加入每一行如何

SELECT
    count_value / count_value_sum AS p
FROM
    myTable t
JOIN
    (SELECT SUM(count_value) AS count_value_sum FROM myTable) s

希望有帮助。

先使用子查询计算总计,然后将总计加入到每一行中,怎么样

SELECT
    count_value / count_value_sum AS p
FROM
    myTable t
JOIN
    (SELECT SUM(count_value) AS count_value_sum FROM myTable) s

希望能有所帮助。

借助Hive 0.11中引入的新分析和窗口功能,您可以:

SELECT count_value / sum(count_value) over () as p from myTable
这避免了连接,如果被另一个字段分区,则计算更容易。例如,如果源表有一个
字段,并且您希望计算使用具有相同
的行的总和,则可以执行以下操作:

SELECT count_value / sum(count_value) over (partition by key) as p from myTable

通过Hive 0.11中引入的新分析和窗口功能,您可以:

SELECT count_value / sum(count_value) over () as p from myTable
这避免了连接,如果被另一个字段分区,则计算更容易。例如,如果源表有一个
字段,并且您希望计算使用具有相同
的行的总和,则可以执行以下操作:

SELECT count_value / sum(count_value) over (partition by key) as p from myTable