• Hive 集合函数 collect_set() collect_list()


    集合函数 collect_set() collect_list()

    实验数据1

    userid username
    11101 张三
    11101 李四
    11101 王五
    11101 赵六
    11101 张三

    注意到张三出现了两次

    -- 建表语句
    create table temp.strategy_temp_20200813_function_test (
        userid string,
        username string
    )row format delimited fields terminated by ',' STORED AS TEXTFILE
    
    -- 查看
    select * from temp.strategy_temp_20200813_function_test t
    

    collect_set()

    collect_set() 通常用于列转行,将某一个列转换成为一行且去重。

    -- 去重的合并
    select userid, collect_set(username) username
    from temp.strategy_temp_20200813_function_test t
    group by userid
    

    结果是

    user_id username
    11101 ["张三","李四",”王五","赵六"]

    若要不去重,则需要使用 collect_list(), 若需要对合并内容排序则使用 group_concat()

    collect_list()

    collect_list() 通常用于列转行, 将某一列合并后,转换成一行,不去重。

    -- 去重的合并
    select userid, collect_list(username) username
    from temp.strategy_temp_20200813_function_test t
    group by userid
    

    结果是

    user_id username
    11101 ["张三","李四",”王五","赵六","张三"]
  • 相关阅读:
    web安全之ssrf
    web安全之sql注入布尔注入
    web安全之sql注入报错型注入
    web安全之sqlload_file()和into outfile()
    浅谈 FHQ-Treap
    (菜鸟都能看懂的)网络最大流最小割,Ford-Fulkerson及Dinic详解
    浅谈最小生成树
    浅谈强连通分量(Tarjan)
    DP-DAY3游记
    关于01背包问题
  • 原文地址:https://www.cnblogs.com/heenhui2016/p/14113788.html
Copyright © 2020-2023  润新知