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. easyui tree 判断点击的节点是否还存在子节点

    有些业务需求是要求tree一次性全部加载,有些是需要异步加载的. 如果是一次性全部加载的tree,那怎么判断点击的节点是否还存在子节点? function loadTree(){ $('#tree') ...

  2. PHP数据学习-二维数组【3】

    <?php // $project = array( // array("bai",12,23.0), // array("zeng",34,12.0), ...

  3. 如何在js文件中实现获取request.getCotextPath();

    我们在jsp中可以方便的使用“request.getCotext()”来获取工程的根目录. 但是如果我们的js代码存在一个单独的js文件中,这时候再想获取根目录,我们就要自己截取了.可以采用下面的方式 ...

  4. Frame Stacking

    poj1128:http://poj.org/problem?id=1128 题意:一个二维图里面有几个相框(四条边的空心矩形框).有重叠,求重叠顺序.还有题目保证至少存在一种符合要求的序列,当有多种 ...

  5. "Ray, Pass me the dishes!"

    uvaLive3938:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&pag ...

  6. SQL Server 全文搜索 配置、查询初体验

    原文:SQL Server 全文搜索 配置.查询初体验 一.使用SQL Server全文搜索配置 要使用SQL Server的全文搜索服务,需要进行如下配置. 1.开启全文搜索服务: 2.开启数据库的 ...

  7. 【HDOJ】2896 病毒侵袭

    AC自动机模板题. #include <iostream> #include <cstdio> #include <cstring> #include <qu ...

  8. c++子类继承父类的覆盖问题

    废话少说,先看一段代码! #include <iostream> #include <string> using namespace std; class A { public ...

  9. PHP实现登录,注册,密码修改

    注册,登录,修改密码 1.登录 2.忘记密码 3.免费注册 页面布局 <div id="views" class="views"> <div ...

  10. BZOJ1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果

    1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 4 ...