我需要根据列秩改变列秩集群
这是我正在使用的查询,但我返回的是"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被选中了