zoukankan      html  css  js  c++  java
  • hivesql之str_to_map函数

    str_to_map(字符串参数, 分隔符1, 分隔符2)

    使用两个分隔符将文本拆分为键值对。

    分隔符1将文本分成K-V对,分隔符2分割每个K-V对。对于分隔符1默认分隔符是 ',',对于分隔符2默认分隔符是 '='

    我们先介绍一下这个函数的应用场景。

    Z表又被称之为拉链表。在同一个分区中主键是stat_date+uid被储存的值是客户的状态。

    我们需要对客户状态进行统计。

    select
    str_to_map(concat_ws(',',collect_set(concat(stat_date,':',label_state))),',',':') 
    from table1 group by uid;

    存贮map字段必须用 map<string,string>存储

    DROP TABLE IF EXISTS tmp.tmp_str_to_map;
    CREATE TABLE IF NOT EXISTS tmp.tmp_str_to_map
    (
    uid string comment '客户号',
    date_label map<string,string> comment 'map字段'
    );

    取用map里的字段,用[""]即可

    可以直接转换取用,而不需要存储字段

  • 相关阅读:
    phpcs
    asp.net之cookie
    ajax技术
    union、except和intersect查询
    外连接查询
    对查询结果分组
    聚合函数查询
    数据库的约束
    数据库备份
    fusionCharts
  • 原文地址:https://www.cnblogs.com/wqbin/p/10887001.html
Copyright © 2011-2022 走看看