您的位置:首页 > 数据库

SAP HANA SQL GROUP BY / ORDER BY / OVER / CASE

2017-05-06 21:51 344 查看
简单举例

select name, score1, score2, nextscore1,
case
when ((nextscore1 IS NOT NULL) AND (score1 - nextscore1 < 0.1))
then score2
else score1
end score_sort1,
case when (nextscore1 IS NOT NULL) AND (score1 - nextscore1 < 0.1)
then score1
else score2
end score_sort2
from
(select
name,
score1,
score2,
LEAD(score1, 1) over (order by score1 desc, score2 desc) as     nextscore1
from
scores
group by
name,
score1,
score2)
ORDER BY
case
when ((nextscore1 IS NOT NULL) AND (score1 - nextscore1 < 0.1))
then score2
else score1
end ,
case when (nextscore1 IS NOT NULL) AND (score1 - nextscore1 < 0.1)
then score1
else score2
end ;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  HANA
相关文章推荐