以下为正文

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

​ 
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哈哈~


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

【HANA系列】SAP HANA SQL合并多行操作