1.案例:

SELECT GREATEST('36', '55', '34') V_MAX, LEAST('36', '55', '34') V_MINFROM DUAL

Oracle比较一列的最大值或者最小值,我们会不假思索地用MAX和MIN函数,但是对于比较一行的最大值或最小值呢?是不是日常用的少,很多人都不知道有ORACLE也有内置函数实现这个功能:COALESCE / GREATEST / LEAST.

1. COALESCE 返回该表达式列表的第一个非空value。

格式: COALESCE(value1, value2, value3, …)

含义: 返回value列表第一个非空的值。

value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。

EXAMPLE: select coalesce (1, null, 2 ) from dual ; — 返回1

select coalesce ( null, 2, 1 ) from dual ; — 返回2

select coalesce (t.empno, t.mgr ) from  scott.emp t ; — 效果类似 NVL( t.empno, t.mgr )

2. GREATEST 返回值列表中最大值

格式: GREATEST(value1, value2, value3, …)

含义: 返回value列表最大的值。

value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。

当value值列表中有一个为NULL,则返回NULL值。

EXAMPLE: select greatest (1, 3, 2 ) from dual ; — 返回3

select greatest ( ‘A’, ‘B’, ‘C’ ) from dual ; — 返回C

select greatest (null, ‘B’, ‘C’ ) from dual ; — 返回null

select greatest (t.empno, t.mgr ) from  scott.emp t ; — 返回empno和mgr 较大值

3. LEAST 返回值列表中最小值

格式: LEAST(value1, value2, value3, …)

含义: 返回value列表最小的值。

value列表必须是相同类型,也可以是一个表的同一行、不同列的值进行比较。

当value值列表中有一个为NULL,则返回NULL值。

EXAMPLE: select least (1, 3, 2 ) from dual ; — 返回1

select least ( ‘A’, ‘B’, ‘C’ ) from dual ; — 返回A

select least (null, ‘B’, ‘C’ ) from dual ; — 返回null

select least (t.empno, t.mgr ) from  scott.emp t ; — 返回empno和mgr 较小值

oracle 数据库对于多列求最大值相关推荐

  1. python 二维列表按列求和,按列求最大值,转置,* 星号操作,简便方法,不使用numpy

    python3中,二维列表(矩阵)按列求和.求最大值.二维列表转置的一些操作,不使用numpy库.在LeetCode做题时比较常用. 太长不看版本 # 用于演示的二维列表 >>>a ...

  2. oracle远程导出数据是卡住了,告急!!!备份oracle数据库时卡住不动求解释,求解决方法!谢谢希望牛人帮忙 - Oracle论坛 - 51CTO技术论坛_中国领先的IT技术社区...

    备份数据库时总是卡住到这一步不动求解释,求解决方法谢谢! starting backup...... backup file path /backup/database/data/2014-09-30 ...

  3. 增加一列为主键 oracle,给oracle数据库增加一列做主键,增加一个sequence,数据库怎么获得主键。...

    ? 1 删除一张表 ? delete from T_DHK_SJ; 2 给表增加一类,并做主键 alter table T_DHK_SJ add (DHKBH number(20)); alter t ...

  4. oracle数据库将一列的值拼接成一行,并且各个值之间用逗号隔开

    使用场景:把某一列值转换为逗号分隔的字符串 例子:比如查询所有的的表空间如下,现在要获得所有的表空间用逗号分隔的字符串(比如rman duplicate的时候skip表空间) SQL> sele ...

  5. Oracle学习总结(4)——MySql、SqlServer、Oracle数据库行转列大全

    MySql行转列 以id分组,把name字段的值打印在一行,逗号分隔(默认) select CustomerDrugCode,group_concat(AuditItemName) from noau ...

  6. 怎么给oracle数据库列转行,oracle数据库 行转列 列转行详解

    [一].行转列 1.1.初始测试数据 表结构:TEST_TB_GRADE create table TEST_TB_GRADE ( ID        NUMBER(10)notnull, USER_ ...

  7. mysql 返回最大值列名_多列求最大值列和列名

    select substr(decode(t.n_intension1_avg,greatest(t.n_intension1_avg, t.n_intension2_avg, t.n_intensi ...

  8. oracle数据库查询表的列

    有表:t_test select * from user_tab_columns u where u.TABLE_NAME=upper('t_test');

  9. oracle查看数据库所有列,sql – 如何查看oracle数据库中表的列的所有元数据?

    I want to know how I can retrieve the all column names,their data type,and any constraints that are ...

最新文章

  1. python使用matplotlib可视化、使用matplotlib可视化scipy.misc图像、自定义使用winter色彩映射、将不同亮度映射到不同的色彩
  2. css 文字过长 省略号,css实现文字过长显示省略号的方法
  3. Laravel 配置项即时载入的服务提供者
  4. 【安全技术】红队之windows信息收集思路
  5. 微信小程序Java登录流程(ssm实现具体功能和加解密隐私信息问题解决方案)
  6. 互联网金融下一个风口的或许在新农业领域?
  7. Mysql和Oracle获取自增主键
  8. JavaScript中this的指向问题及面试题你掌握了吗?
  9. JAVA:二进制和十进制互转
  10. python虚拟环境中安装diango_django是要在虚拟环境激活后安装吗
  11. (14)数据结构-二叉排序树
  12. php国际象棋棋盘奇行奇列,国际象棋怎么玩
  13. 基于QT+ffmpeg+SDL2的流媒体播放器
  14. 绝知此事要躬行|fatal: not in a git directoryError: Command failed with exit 128: git
  15. 下面哪些不是java的原始数据类型_以下哪个不是Java的原始数据类型()A? – 手机爱问...
  16. 亚马逊海外购最受中国Prime会员喜爱的十大品牌(内含榜单)
  17. 这个emoji表情可使iphone变砖
  18. nginx upstream 健康检查
  19. 经典龙格-库塔法(四阶龙格-库塔法)求解求一阶常微分方程相应的特解的Python程序
  20. 计算机领域常用的英文名称和缩写,计算机常用英文缩写.doc

热门文章

  1. php无线分类函数,php 无限级分类函数
  2. 虚拟私有云网络VPC
  3. pcb结构链表_第2章 2-1进程与PCB
  4. burp 调试_Burp插件分享及编译简学Wildcard+
  5. centos7上安装redis6-0-5
  6. jpa写原生sql-EntityManager
  7. 极光推送后台php接口,极光推送Jpush(v2)接口 服务端PHP版本的REST API推送类
  8. mysql日志文件名称_MySQL 日志文件 说明
  9. 系统如何安装到租的服务器,租用服务器后,检查及环境配置步骤
  10. argument在python里什么意思_在Python中星号*是什么意思?