我在 HANA 工作室有一张桌子,它由 5 列组成:
item
value
cost
Margin
ABC_cat
如何Margin Categorization
使用 if-else 条件生成第 6 列?
IF ((([Margin])/[VALUE])*100<((SUM([VALUE])-SUM([COST]))/SUM([VALUE]))*100)
THEN ('BELOW')
ELSE ('ABOVE')
您需要两件事:窗口函数和 case 语句:
select
item, value, cost, margin, abc_cat,
case when
margin / value < (sum(value) over() - sum(cost) over()) / sum(value) over()
then 'BELOW'
else 'ABOVE'
end as "Margin Categorization"
from my_schema.my_table;
创建属性视图并创建计算列。有关详细信息,请参阅 HANA 建模器指南。