我需要编写一个配置单元查询。我正在处理一个包含三列的数据集:客户ID,产品ID和价格。我需要编写一个查询,输出客户购买的最大项目的客户ID和产品ID列。
答案 0 :(得分:0)
SELECT [customer], [product] FROM table WHERE [price] = (SELECT MAX(t.[price]) AS price
FROM table as t WHERE t.[customer] = [customer])
如果您想要找到客户购买的最贵的商品,可能是这样的吗?我不确定语法是否100%正确,但它应该给你一些东西。我在下面为Hive添加了一个备忘单。
答案 1 :(得分:0)
使用row_number()
:
select Customer_ID, Product_ID
from
(select Customer_ID,
Product_ID,
row_number () over ( partition by Customer_ID order by Price desc) rn
from table
where customer_id=given_customer_id --add filter if necessary
)s
where rn=1;