赞
踩
有一次面试,面试官问了这么一个问题,把每个人的标签统计到一行,并用逗号分隔。
这种场景很常见,博主平时写存储过程偶尔也会用到这种写法。今天专门建表导数,做个笔记。
现在假设每个人所带的标签没有重复的,现在要统计出每个人的标签,并以逗号分隔,
这里就要用到函数concat_ws和collect_list了
函数名 | 返回类型 | 描述 |
concat_ws(string SEP, string
A, string B…)
| String | 以SEP为分隔把A、B……合并起来 |
- SELECT
- cus_name||'('||concat_ws(',',collect_list(visit_goal))||')'
- FROM dpm.y_cus_visit
- GROUP BY cus_name
运行结果如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。