我是SQL新手,需要一些帮助。我有一个表有一些数值,我需要填充一个列(所有值为空)与表中的其他列的计算。例如, 。我有一些价值观和总价值。我需要另一列来计算这两者之间的百分比。如何通过几列逐个进行一些聚合计算?
我有很多列需要根据不同的列计算填充。例如。列名“risk1”将帮助我计算并填充名为“1per”的另一列。我的代码看起来是这样的:
UPDATE DPRA2_Export
SET "1Per" = ((CAST(Risk1 AS DECIMAL (38,2))/CAST(GrandTotal AS DECIMAL(38,2))) * 100);
UPDATE DPRA2_Export
SET "2Per" = ((CAST(Risk2 AS DECIMAL (38,2))/CAST(GrandTotal AS DECIMAL(38,2))) * 100);
UPDATE DPRA2_Export
SET "3Per" = ((CAST(Risk3 AS DECIMAL (38,2))/CAST(GrandTotal AS DECIMAL(38,2))) * 100);
.................
它继续这样下去。
有没有一种方法可以循环这个东西,而不是一次又一次地写字。代码中唯一更改的是列名“Risk%”和SET列名“%Per”
任何想法?
桌子上有多少列? –
目前有5个,但会上升。如果可能,我想要一个动态的方法来做到这一点。 –
老实说,在那几栏中,写一些动态内容比维持标准更新语句要花费更长的时间。 –