博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hive SQL踩坑记录-NULL判断、字符串拼接、执行报错:Expression not in GROUP BY key
阅读量:4289 次
发布时间:2019-05-27

本文共 720 字,大约阅读时间需要 2 分钟。

记录在使用Hive SQL 过程中的错误信息

【Hive SQL踩坑】NULL判断、字符串拼接、执行报错:Expression not in GROUP BY key

对于NULL判断

select last_visit_day,    	case 			when last_visit_day is NULL  then datediff('2021-06-01', '2021-05-01')			else COALESCE(datediff(stat_dt, last_visit_day), 0)		end as consecutive_days_without_access from statisical_visit_d;

对于NULL的判断不能用‘=’或者‘==’判断,应该使用is NULL or is not NULL

字符串拼接

select case	    when weekofyear('2021-06-01') < 10 then CONCAT('wk0',1)	    when weekofyear('2021-06-01') >= 10 then CONCAT('wk',10)    end as week_id from statisical_visit_d

对于字符串拼接不能使用+拼接,要使用**CONCAT(’’,’’)**进行拼接

执行报错:Expression not in GROUP BY key

Hive与Mysql的SQL语句类似,但是有一定的差别,对于Hive来说,查询条件中只能是group by对应的列或者其他列的聚合函数,例如:通过sum、avg、count等加工的其他列。

转载地址:http://qblgi.baihongyu.com/

你可能感兴趣的文章
Android面试一天一题(6)——如何进行技术选型
查看>>
Velocity笔记--使用Velocity获取动态Web项目名的问题
查看>>
安卓学习:如何将一个Activity设置成窗口的样式
查看>>
Android: 自定义 View
查看>>
MySQL-99语法:外连接与内连接-(左内连接多表和查询)
查看>>
Struts2之Struts2-2.5.5 Interceptor
查看>>
Java基础-21总结字符流,IO流编码问题,实用案例
查看>>
Zookeeper请求处理
查看>>
当Java遇见了Html--Jsp……
查看>>
什么是分布式数据存储
查看>>
Java 进阶——类成员初始化顺序
查看>>
厉害了我滴哥,原来验证码是这么造出来的!
查看>>
Oracle数据库中几种非常有用的函数(with……as等)
查看>>
简单学习Nginx之:动静分离
查看>>
JQUERY 选择器的用法
查看>>
Java 时间类-Calendar、Date、LocalDate/LocalTime
查看>>
翻译---高级SQL注入 -基于整数
查看>>
JavaScript ES6 核心功能一览
查看>>
JavaScript数组去重_优就业
查看>>
Oracle中用Exp命令导出指定用户下的部分表或数据
查看>>