数据仓库——collect_set函数、NVL函数、日期处理
Poolweet_
原创
关注
0点赞·881人阅读
目录
1.collect_set函数
2.nvl函数
3.日期处理函数
1.collect_set函数
数据:
id order-type order-number
1 aa 5
2 bb 2
1 bb 1
2 aa 3
1 aa 2
需求:对用户的订单进行分析,将不同订单类型分别多少单展示出来,每个用户一行
实现:
1.使用concat()函数将order_type和order_number连接起来
concat(order_type,'(',order_number,')')
2.使用concat_ws()和collect_set()进行合并行
将上面列表中一个user可能会占用多行转换为每个user占一行的目标表格式,实际是“列转行”
select user,concat_ws(',',collect_set(concat(order_type,'(',order_number,')'))) order from table group by user
order是别名
locate是查找第一个参数在第二个参数中的位置,不存在时
返回值
为0
concat是连接各个参数
locate(',1,',concat(',',
ext3
))=0的意思是',1,'这个串不在','和ext3的连接字符串中
后面类似
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)