在数据库的开发过程中,我们可能会遇到这样的需求,获取一行记录中某几个字段的最大值或者是最小值,oracle给我们提供了解决这种需求的函数,如下所示:
greatest(col1, col2, col3...)取得col1, col2, col3...字段中是大的值
least(col1, col2, col3....)同理,取得col1,col2,col3...字段中最小的值
如表A内容如下:
col1 col2 col3
-----------------------
30 20 44
3 9 5
执行sql:select col1, col2, col3, greatest(col1, col2, col3) maxV, least(col1, col2, col3) minV from A后,结果如下:
col1 col2 col3 maxV minV
-----------------------------------------
30 20 44 44 20
3 9 5 9 3
col1 col2 col3
-----------------------
30 20 44
3 9 5
执行sql:select col1, col2, col3, greatest(col1, col2, col3) maxV, least(col1, col2, col3) minV from A后,结果如下:
col1 col2 col3 maxV minV
-----------------------------------------
30 20 44 44 20
3 9 5 9 3