1           语法

GREATEST(expr_1, expr_2, ...expr_n)

2           说明

GREATEST(expr_1, expr_2, ...expr_n)函数从表达式(列、常量、计算值)expr_1,
expr_2, ... expr_n等中找出最大的数返回。在比較时。OracIe会自己主动按表达式的数据类型进行比較,以expr_1的数据类型为准。

3   
同意使用的位置

过程性语句和SQL语句。

4           演示样例

4.1            演示样例一【数值】

expr_1为数值型。

按大小进行比較。

所有为数值型。取出最大值为16:

SQL>SELECT GREATEST(2, 5, 12, 3, 16, 8, 9) A FROM DUAL;

A

----------

16

部分为数值型,可是字符串能够依据expr_1的数据类型通过隐式类型转换转成数值型:

SQL>SELECT GREATEST(2, '5', 12, 3, 16, 8, 9) A FROM DUAL;

A

----------

16

部分为数值型,可是字符串不能通过隐式类型转换成数值型会报错,由于字符串A不能转换成数值型:

SQL>SELECT GREATEST(2, 'A', 12, 3, 16, 8, 9) A FROM DUAL;

SELECTGREATEST(2, 'A', 12, 3, 16, 8, 9) A FROM DUAL

ORA-01722:
无效数字

4.2            演示样例二【字符串】

expr_1为字符型。

按首字母进行比較(假设相等则向下比較)

所有为字符型,取出最大值G:

SQL> 
SELECT GREATEST('A', 'B', 'C', 'D', 'E', 'F','G') A FROM DUAL;

A

-

G

所有为字符型,首字母相等:

SQL> 
SELECT GREATEST('A', 'B', 'C', 'D', 'E','GA', 'GAB') A FROM DUAL;

A

---

GAB

部分为字符型,会把非字符型转换成字符型:

SQL> 
SELECT GREATEST('A', 6, 7, 5000, 'E', 'F','G') A FROM DUAL;

A

-

G

4.3            演示样例三【时间】

expr_1为时间类型。

所有为时间类型:

SQL> 
SELECTGREATEST(sysdate,TO_DATE('2014-08-01','YYYY-MM-DD')) A FROM DUAL;

A

-----------

2014/8/1

部分为时间类型,不能进行隐式类型转换:

SQL> 
SELECT GREATEST(sysdate,'2014-08-01') A FROMDUAL;

SELECTGREATEST(sysdate,'2014-08-01') A FROM DUAL

ORA-01861:文字与格式字符串不匹配

4.4            演示样例四【空值】

使用GREATEST取最大值的时候,当expr为函数的时候,不可避免的会产生空值。

产生空值。函数GREATEST会怎么进行处理那:

expr_1为NULL时:

SQL> 
SELECT GREATEST(NULL, 'B', 'C', 'D', 'E','GA', 'GAB') A FROM DUAL;

A

-

expr_1不为NULL时,其他的expr为NULL时:

SQL> 
SELECT GREATEST('A', 'B', 'C', 'D', 'E',NULL, 'GAB') A FROM DUAL;

A

-

由上能够发现,仅仅要GREATEST的expr有一个为NULL,都会返回NULL。

版权声明:本文博主原创文章。博客,未经同意不得转载。

ORACLE功能GREATEST功能说明具体实例的更多相关文章

  1. oracle导入导出功能

    1.普通版:oracle导入导出功能:导出exp 用户名/密码@SID file=f:\xx.dmp owner=用户名 导入imp 用户名/密码@SID full=y file=f:\xx.dmp ...

  2. 用mysql实现类似于oracle dblink的功能

      用mysql实现类似于oracle dblink的功能 首先看看有没有federated 引擎. mysql> show engines; +------------+----------+ ...

  3. oracle修改审计功能

    oracle修改审计功能 如果没有关闭审计功能,审计日志文件默认保存在位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/ 关闭审计:alter system set au ...

  4. Oracle EBS WMS功能介绍(二)

    Oracle EBS WMS功能介绍(二) (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处.否则请与本人联系,违者必究) 出货物流逻辑主要包括 1.      打包.能够进 ...

  5. Trove系列(三)—Trove的功能管理功能介绍

    Trove的功能管理功能Trove的功能管理功能包括给各种不同的版本的 datastore 安装不同的 功能. 本管理功能只适用于激活/去活全系统的功能.唯一例外的是数据存储功能列表功能,该功能对所有 ...

  6. Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考

    写在前面: 1.Oracel打每个补丁的操作有时存在差异,所以不管多熟悉,都应该在打任何补丁之前阅读新补丁中附带的readme. 2.Oracle每季度都会更新一个最新的PSU,本文最新指的是当前最新 ...

  7. 查询oracle数据库的数据库名、实例名、ORACLE_SID

    数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...

  8. Asianux 7.3安装Oracle 11.2.0.4单实例体验

    环境:Asianux 7.3 需求:安装Oracle 11.2.0.4 单实例 背景:系统使用默认的最小安装部署,Oracle安装额外需要的包统一使用yum安装. 查看当前系统相关信息: [root@ ...

  9. Atiit 常见功能 常用功能与模块的最快速解决方案

    Atiit 常见功能 常用功能与模块的最快速解决方案 一.大力使用第三方API接口 一.导出excel jquery.table2excel 二.Form表单验证,使用h5验证属性 验证发生在form ...

随机推荐

  1. 面试后 follow up letter 分享

    分享一下最近面试外企的follow up letter. Dear Mr. Xu,     Thank you again for the time you and Mr. Guo spent wit ...

  2. js获取url中的参数对象、js生成带参数的url

    // 获取url中的参数,并返回一个对象 $.getRequestData = function() { var url = location.search; //获取url中"?" ...

  3. js操作Cookie,实现历史浏览记录

    /** * history_teacher.jsp中的js,最近浏览名师 * @version: 1.0 * @author: mingming */ $(function(){ getHistory ...

  4. SharePoint 2013 更新多个用户字段(Person or Group)

    有时我们需要更新一个用户到Person or Group类型的字段, 当然这个属性允许设置多个用户, 要如何才能添加新的用户到该字段,同时还不影响原始存在的值. 这里我们需要了解 SPFieldUse ...

  5. 实现一个简单的sniffer

    #include<stdio.h> #include<pcap.h> #include<unistd.h> #include<stdlib.h> //# ...

  6. hadoop 异常 datanode未启动

    暴力方法:(本人是学习阶段,实际工作中不能这么做)在各个节点上执行如下操作. 将/tmp 删除 将 conf/mapred-site.xml <property> <name> ...

  7. html中混入的特殊字符

    从设计那里拿来的psd中常常会有全角的单双引号. 如果只是拷贝这些字符到做好的html里面,顶多看到乱码再加以改正. 但是,如果是通篇的doc,需要加上各种html语义标签,在拷贝来的doc文字之间加 ...

  8. Sublime text 2 快捷键配置文件

    分屏快捷键 command+alt+2(就是view菜单中layout后跟数字,有1234,快捷键都带有提示符) 格式化快捷键 ctrl+alt+f 这里提到一个和sublime无关的..comman ...

  9. LA 3521 Joseph's Problem

    题意:给你正整数n和k,然后计算从i到n k%i的和: 思路:如果n小于1000000,直接暴力计算,然后大于1000000的情况,然后在讨论n和k的大小,根据k%i的情况,你会发现规律,是多个等差数 ...

  10. Json传递后台数据的问题

    在后台我有两个类: public Class Person { private String name; private Address address;//一个自定义的类 //getter和sett ...