目录

  • 背景介绍
  • greatest函数
    • 基本用法:
    • 简单示例
  • least函数
    • 基本用法:
    • 简单示例
  • 实战
    • 需求:

背景介绍

在工作开发中遇到取两列值中最大的值,当时首先想到的是max函数,因为在java中经常有类似的比较两个数值大小的情况,后来意识到max是取一列中的最大值,查询其他资料得知需要用到greatest函数,特意把greatest函数和least函数的简单用法总结如下:

greatest函数

基本用法:

greatest(col_a, col_b, …, col_n)比较n个column的大小返回最大值;
若column中有null,返回null,
若某个column中字段类型是string,而其他column字段类型是int/double/float,返回null;

简单示例

select greatest(-1, 0, 5, 8) --8
select greatest(-1, 0, 5, 8, null) --null
select greatest(-1, 0, 5, 8, "dfsf") --null
select greatest("2020-02-26","2020-02-23","2020-02-22") --2020-02-26
select greatest("2020-02-26 20:02:11","2020-02-23 20:02:11","2020-02-22 20:02:11") --2020-02-26 20:02:11

least函数

基本用法:

least(col_a, col_b, …, col_n)比较n个column的大小返回最小值;
若column中有null,返回null,
若某个column中字段类型是string,而其他column字段类型是int/double/float,返回null;

简单示例

select least(-1, 0, 5, 8) --  -1
select least(-1, 0, 5, 8, null) --null
select least(-1, 0, 5, 8, "dfsf") --null
select least("2020-02-26","2020-02-23","2020-02-22") --2020-02-22
select least("2020-02-26 20:02:11","2020-02-23 20:02:11","2020-02-22 20:02:11") --2020-02-22 20:02:11

实战

需求:

有两个字段,第一个字段是creat_time,第二个字段是update_time,现在的需求是如果两列字段有一个为空则取另一列字段的值,如果两列的值均不为空,则取较大的值;

case
when creat_time is null and update_time is not null  then update_time
when creat_time is not null and update_time is  null  then creat_time
when creat_time is not null and update_time is not  null then greatest(creat_time,update_time)
else null
end new_time

参考:https://blog.csdn.net/weixin_38750084/article/details/97788821

大数据之Hive:greatest和least函数相关推荐

  1. 大数据之Hive入门

    1 Hive基本概念 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计.Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供 ...

  2. 大数据第三季--Hive(day3)-徐培成-专题视频课程

    大数据第三季--Hive(day3)-1425人已学习 课程介绍         大数据第三季--Hive(day3) 课程收益     大数据第三季--Hive(day3) 讲师介绍     徐培成 ...

  3. 大数据技术-hive窗口函数详解

    有不少同学一听这个标题,hive窗口函数是什么鬼?没听说过还有窗口函数这个东西啊,其实它的用处可大了,下面听小千慢慢道来. hive窗口函数 窗口函数指定了函数工作的数据窗口大小(当前行的上下多少行) ...

  4. 大数据之Hive:hive中的四个by

    目录 1.前言 2.order by 3.sort by 4.distribute by 5.Cluster By 6.实际需求 1.前言 hive中的四个by分别为order by,sort by, ...

  5. 大数据之——Hive

    目录 1. Hive 基本概念 1.1 什么是 Hive 1.2 Hive 的优缺点 1.2.1 优点 1.2.2 缺点 1.3 Hive 架构原理 2. Hive 安装 2.1 Hive 安装地址 ...

  6. 大数据数据仓库 Hive (三)

    大数据技术之Hive 一 Hive基本概念 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据 ...

  7. 大数据案例——Hive、MySQL、HBase数据互导

    本文是基于教程大数据案例--本地文件上传hive数据库,对数据在Hive,MySQL,HBase之间的互导进行进阶版的学习.数据集:淘宝用户点击商品操作数据集,共30万条记录.如果没有安装MySQL, ...

  8. 大数据数据仓库——hive学习权威指南

    友情提示:更多有关大数据.人工智能方面技术文章请关注博主个人微信公众号:大数据分析爱好者社区! 学习hive权威指南 目录: ETL介绍 大数据平台架构概述 系统数据流动 hive概述 hive在ha ...

  9. 大数据之hive 阿善看到

    第1章 Hive基本概念 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计工具. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张 ...

最新文章

  1. 实战 | 如何用最快的速度学会Dlib人脸识别开发?
  2. Scrapy项目 - 数据简析 - 实现腾讯网站社会招聘信息爬取的爬虫设计
  3. 前端DevOps之PageSpeed Insights
  4. 数据“土豪”电信云告诉你,如何“玩转”数据生态
  5. php输出mysqli查询出来的结果
  6. 中国古代天文星象学的入门书:《步天歌》
  7. vivado顶层模块怎么建_【第2040期】Node 模块化之争:为什么 CommonJS 和 ES Modules 无法相互协调...
  8. leetcode10:Regular Expression Matching
  9. 在react里写原生js_从零开始使用react+antd搭建项目
  10. VMware虚拟机环境下配置centos的固定IP并用xshell连接
  11. Matlab:实现菲涅尔矩形孔衍射仿真
  12. 配置nginx报错no “ssl_certificate“ is defined in server listening on SSL port while SSL handshaking
  13. 谈谈我们为什么要前后端分离
  14. word输入公式快捷键
  15. 优化实现Mobile/Bumped Diffuse
  16. 互联网晚报 | 9月15日 星期三 | iPhone 13正式发布;天猫双11正式启动商家报名;华为推出鸿蒙矿山操作系统“矿鸿”...
  17. STM32---设备电子签名
  18. 微影Q8pro投影仪和哈趣H1投影仪相比谁好用 一表看清
  19. SQL数据库的一些基本操作
  20. 士兵职业基本适应性测试软件,士兵职业基本适应性检测系统 类型1.2.3怎么分...

热门文章

  1. YUI3学习(三)---OOP
  2. getParameters failed (empty parameters) 问题解决
  3. 那些自律的人,真的过得好吗?
  4. 获取照片的EXIF信息
  5. 1031 查验身份证(15)(15 分)
  6. vue怎么和python后端交互_Vue - 与后端交互
  7. PAT1037在霍格沃茨找零钱(两种解法)
  8. 代数余子式和余子式符号_【考研数学】线性代数之行列式、矩阵
  9. 牛客小白月赛8(口胡和一些瞎想)
  10. Jquery 获取元素属性值