Hive:在特定行中添加一个重复特定列的值的列?
Hive: Add a column with a value repeated of a specific columnn in a specific row?
我在 Hive 中有一个看起来像这样的 table,叫做 Products
。
'Root Product | Product | Date
A A 2012
A B 2013
A C 2013
D D 2014
D E 2015
当 Root Product == Product
(根产品的日期)时,是否可以添加第四列来重复列 Date
中出现的日期值?这样
'Root Product | Product | Date | Root Date
A A 2012 2012
A B 2013 2012
A C 2013 2012
D D 2014 2014
D E 2015 2014
使用 max
window 函数。
select root_product
,product
,date
,max(case when root_product = product then date end) over(partition by root_product) as root_date
from tbl
我在 Hive 中有一个看起来像这样的 table,叫做 Products
。
'Root Product | Product | Date
A A 2012
A B 2013
A C 2013
D D 2014
D E 2015
当 Root Product == Product
(根产品的日期)时,是否可以添加第四列来重复列 Date
中出现的日期值?这样
'Root Product | Product | Date | Root Date
A A 2012 2012
A B 2013 2012
A C 2013 2012
D D 2014 2014
D E 2015 2014
使用 max
window 函数。
select root_product
,product
,date
,max(case when root_product = product then date end) over(partition by root_product) as root_date
from tbl