You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于HIVE SQL实现按Item聚合计算及条件标记需求

Hive SQL 实现需求

针对需求,以下是对应的Hive SQL代码,包含所有要求的输出列:

SELECT
    Item,
    Cost,
    -- 计算Cost的25%取值
    Cost * 0.25 AS `25% cost`,
    price,
    -- 按Item聚合的price总和
    SUM(price) OVER(PARTITION BY Item) AS total_price,
    -- 按Item计算的price累计值(此处按price升序累计,可根据实际业务调整排序字段)
    SUM(price) OVER(PARTITION BY Item ORDER BY price ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS cumulative_price,
    -- 标记累计值大于25% cost的记录
    CASE 
        WHEN SUM(price) OVER(PARTITION BY Item ORDER BY price ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) > Cost * 0.25 
        THEN 'Y' 
        ELSE 'N' 
    END AS flag
FROM
    your_table_name; -- 替换为你的实际表名

代码说明:

  • 25% cost:通过Cost * 0.25直接计算,用反引号包裹列名避免特殊字符引发语法错误
  • total_price:利用窗口函数SUM(price) OVER(PARTITION BY Item),实现按Item分组统计price总和
  • cumulative_price:通过带排序规则的窗口函数实现累计求和,ORDER BY price可替换为业务需要的排序字段(如时间字段),ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW指定累计范围为当前分组的第一行到当前行
  • flag:用CASE WHEN逻辑判断累计值与25% cost的大小关系,返回标记(示例用Y/N,可按需调整)

内容的提问来源于stack exchange,提问作者sue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 17:55:21