【HANA系列】SAP HANA SQL取表中每行最小值

公众号:matinal
本文作者:matinal
 

 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

比如有一个表结构+数据如下:

​
ID | COL_1 | COL_2 | COL_3
---|-------|-------|------
 1 |     5 |     3 |    2
 2 |     7 |     9 |    8
 3 |     5 |     4 |    6

想要得到每一行最小的数据值

即得到如下结果:

​
ID | MIN   
---|-------
 1 |     2 
 2 |     7 
 3 |     4

很多人可能第一个想法就想到min()函数

就是下面这个写法:

SELECT ID, min(COL_1, COL_2, COL_3) FROM DUMMY;

​

这说明,你还不了解HANA中的min()函数

 

来简单介绍一下min()函数

min()函数一次只支持两列啊 两列啊

所以,这样的做法不行,下面来介绍个更好的

就是我这样的写法如下:

select least(col_1, col_2, col3_3)
from DUMMY;

​

这个写法可以实现上面的需求,但是有个问题,就是,如果有NULL的数值列就不行了

 

那么,你可以把NULL数据值处理一下

用:

COALESCE()

​

来处理NULL数值列

 

这样就完美了,O(∩_∩)O哈哈~

posted @ 2019-07-15 08:59  SAPmatinal  阅读(862)  评论(0编辑  收藏  举报