函数说明
当有两个或多个参数时,返回值为最大的参数值。
当参数中有一个为NULL 时,直接返回NULL。
当参数都是字符串时,默认是不区分大小写的,如果希望字符串值的参数进行大小
写敏感,则在需要敏感的字符串参数前加上BINARY。
hive 引擎和oracle 引擎默认区分大小写,不支持BINARY。
这些参数比较使用下列规则:
1)
如果返回值在INTEGER 上下文中或者所有的参数是整型值,那么它们使
用整数比较;
2)
如果返回值在REAL 上下文中或者所有的参数是实数值,
那么它们使用实
数比较;
3)
如果所有的参数是大小写敏感的字符串,那么参数比较也是大小写敏感
的;
其它情况下,参数比较大小写不敏感。
示例
示例1:参数值为整型数字。
gbase> SELECT GREATEST(2,0) FROM t;
+---------------+
| GREATEST(2,0) |
+---------------+
| 2 |
+---------------+
1 row in set
GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 373
示例2:参数值为浮点型数字。
gbase> SELECT GREATEST(34.0,3.0,5.0,767.0) FROM t;
+------------------------------+
| GREATEST(34.0,3.0,5.0,767.0) |
+------------------------------+
| 767.0 |
+------------------------------+
1 row in set
示例3:参数值为字符串,不区分大小写。
gbase> SELECT GREATEST('B','a','C') FROM t;
+-----------------------+
| GREATEST('B','a','C') |
+-----------------------+
| C |
+-----------------------+
1 row in set
示例4:参数值为字符串,字符串参数前加上BINARY,区分大小写。
gbase> SELECT GREATEST('B',BINARY 'a','C') FROM t;
+------------------------------+
| GREATEST('B',BINARY 'a','C') |
+------------------------------+
| a |
+------------------------------+
1 row in set
示例5:参数值中包含NULL,则执行结果为NULL。
gbase> SELECT GREATEST('B',NULL,'C') FROM t;
+------------------------+
| GREATEST('B',NULL,'C') |
+------------------------+
| NULL |
+------------------------+
1 row in set