oracle sql 转换成 hive sql -子查询转关联查询(十八),least和greatest函数,时间格式

其他sql格式也在更新中,可直接查看这个系列,要是没有你需要的格式,可在评论或私信我
个人目录

hive的nvl中的子查询

    • least和greatest函数理论
      • 案例,用时间格式
      • 格外笔记

least和greatest函数理论

函数 例子 作用 结果
least select least(123,133,123123,11) 这个函数是获取括号中的最小值,时间也可以实现 11
greatest select greatest(23,133,123123,11) 这个函数是获取括号中的最大值,时间也可以实现 123123

案例,用时间格式

oracle 原sql

SELECT
	  least(a.AccDate, a.paydate) ACCDATE,
	  greatest(a.AccDate, a.paydate) AVVDATE
FROM
	aaa a

hive 改sql

SELECT
		least(DATE_FORMAT(a.AccDate, 'yyyy-MM-dd'),
		 DATE_FORMAT(a.paydate, 'yyyy-MM-dd')) ACCDATE,
		 
		greatest(DATE_FORMAT(a.AccDate, 'yyyy-MM-dd'),
		DATE_FORMAT( a.paydate, 'yyyy-MM-dd')) AVVDATE
FROM
	aaa a

格外笔记

一开始我是没有加DATE_FORMAT这个时间格式化的,但是好像其中有一个字段是空或者是格式不低吧,导致函数失效,后来才加的这个,个人感觉还是格式化一下好 hive spark的语法事太多了

你可能感兴趣的:(hive,sql,oracle)