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

Hive及Spark环境下使用HiveQL实现列转行的操作咨询

HiveQL实现宽表转多行方案

你需要的是将原表中n、Annualised electricity bill - mean两个指标列拆分为独立的行数据,可通过Hive的LATERAL VIEW搭配EXPLODE函数实现,假设你的原表名为original_electricity_data,具体代码如下:

SELECT 
    Electricity_Network,
    EnergyType,
    ContractType,
    FY,
    exploded_value AS values
FROM original_electricity_data
LATERAL VIEW EXPLODE(
    ARRAY(
        CONCAT('n-', CAST(n AS STRING)),
        CONCAT('Annualised electricity bill - mean-', CAST(`Annualised electricity bill - mean` AS STRING))
    )
) exploded_view AS exploded_value

注意事项

  • 如果需要匹配示例中的小数精度,可在CAST转换时指定DECIMAL类型精度,比如CAST(Annualised electricity bill - mean AS DECIMAL(18,12))即可输出12位小数
  • 如果你提供的目标输出中第二行FY后的空逗号是排版要求,可在SELECT中新增空值列适配,常规场景下上述代码输出的结果已经满足指标拆行的需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 10:36:00