如何使用多个条件修改sgl



我需要根据列秩改变列秩集群

这是我正在使用的查询,但我返回的是"top10";仅对于rank =1和所有其他值获得"top30";

update se.se_source_data 
set Rank_Cluster = (case ranking  when ranking <= 11 then 'Top10' 
when ranking <= 20 then 'TOP20'
else 'TOP30+' end)

如果你需要search_condition例如:ranking <= 11,那么你应该使用这个语法

update se.se_source_data 
set Rank_Cluster = (case  
when ranking <= 11 then 'Top10' 
when   ranking <= 20 then 'TOP20'
else 'TOP30+' end)

使用CASE运算符

<<blockquote>案例em>价值

WHENcompare_valueTHENresult

[当compare_value然后结果…]

其他(结果]

结束因此,ranking <= 11被视为一个compare_value表达式,必须计算其值并与ranking进行比较。

对于ranking = 1,ranking <= 11的值为1,即等于,返回'Top10'

对于所有其他ranking值,compare_value都是1或0或NULL,并且不匹配。所以ELSE被选中了

最新更新