GREATEST 函数返回一个或多个表达式列表中的最大值。 数据库使用第一个参数 expr 来确定返回类型。 如果其余参数的数据类型和第一个参数 expr 的数据类型不同,则 OceanBase 将第一个参数 expr 之后的每个参数隐式转换为比较之前的第一个 expr 的数据类型。

语法

  1. GREATEST(expr [, expr ]...)

参数

参数

说明

expr

一个表达式或表达式列表。数据类型可以是:NUMBERFLOATBINARY_FLOATBINARY_DOUBLECHARVARCHAR2NCHARNVARCHAR2CLOB

返回类型

如果第一个参数 expr 的数据类型为 NUMBERFLOATBINARY_FLOATBINARY_DOUBLE,则返回与第一个参数 expr 相同的数据类型。如果第一个参数 expr 的数据类型为 CHARVARCHAR2CLOB,则返回 VARCHAR2 类型。如果第一个参数 expr 的数据类型为 NCHARNVARCHAR2,则返回 NVARCHAR2 类型。

示例

以下语句比较了字符串的大小,并返回了其中最大的字符串:

  1. SELECT GREATEST('HAPPY', 'HAPPEN', 'HAPPINESS') "Greatest"
  2. FROM DUAL;

返回结果:

  1. +----------+
  2. | Greatest |
  3. +----------+
  4. | HAPPY |
  5. +----------+

以下语句比较了整数 1 和 字符串 3.9252.4 三者间的大小,由于第一个参数的数据类型为数值数据类型,所以其余参数将被隐式转换为数值数据类型后再进行比较:

  1. SELECT GREATEST (1, '3.935', '2.4') "Greatest"
  2. FROM DUAL;

返回结果:

  1. +----------+
  2. | Greatest |
  3. +----------+
  4. | 3.935 |
  5. +----------+