具有聚合函数的计算列

时间:2010-05-27 08:40:30

标签: sql-server

我的表中有七列: 小时,体重,状态,total_hours,total_weight和百分比

total_weight = weight where status = 'X'
total_hours = hours where status = 'X'
percentage = total_hours/sum(weight)

sum(weight)是一个聚合函数

我想指定公式来生成三个计算列。 我该怎么办?

1 个答案:

答案 0 :(得分:0)

根据您的说法,您希望3列是整个表格中的数据聚合? SQL Server不允许这样做,因为聚合函数不能在计算列中使用。现在你可能有用户定义的标量函数返回列中的值,但这不能被持久化,在这种情况下我看不到什么价值。