presto和hive中grouping sets的格式不一致问题

本文介绍了在Presto中尝试使用Hive的grouping sets功能时遇到的格式不一致问题及解决方案。文章通过具体的需求场景——统计t_cookie表按月、天和月天的cookieid个数,展示了多种处理方式,包括独立的SQL语句、union all、以及两种不同形式的grouping sets写法。在Presto中,grouping sets的正确写法是在group后面不加任何内容,而加逗号的方式虽然能避免错误,但未明确解释原理。
摘要由CSDN通过智能技术生成

背景

遇到的问题,在presto中使用hive中的grouping sets报错

  • 报错信息如下
    [1] Query failed (#20220811_003524_00009_hzxre): line 5:5: mismatched input 'grouping'. Expecting: '%', '*', '+', '-', '.', '/', 'AT', '[', '||', <expression> org.antlr.v4.runtime.InputMismatchException
    
  • 解决方法
    • 见方式3

需求

  • 现有一个t_cookie表,其结构和数据如图
    在这里插入图片描述
  • 需求:分别按照(month)、(day)、月和天(month,day)统计 来访用户cookieid个数
  • 结果如图
    在这里插入图片描述

解决需求

方式1: 写三个SQl语句

sel
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值