在SQL Server 2012中指定一个计算列作为平均值
我可以在SQL Server中指定一个计算列来计算另一列的平均值吗 比如说在SQL Server 2012中指定一个计算列作为平均值,sql,sql-server-2012,Sql,Sql Server 2012,我可以在SQL Server中指定一个计算列来计算另一列的平均值吗 比如说 CREATE TABLE dbo.Sales ( TimeOfSale dateTime, AmountOfSale money, TotalSalesForMonth AS ?(Sum(AmountOfSale) over TimeofSale by month), AverageForMonth AS ?(Sum(AmountOfSale) over TimeofSale by mo
CREATE TABLE dbo.Sales
(
TimeOfSale dateTime,
AmountOfSale money,
TotalSalesForMonth AS ?(Sum(AmountOfSale) over TimeofSale by month),
AverageForMonth AS ?(Sum(AmountOfSale) over TimeofSale by month / # sales per month)
);
我确信我可以作为一个存储过程来做这件事,并生成另一个表,但我只是好奇是否可以用计算列来做这件事 是的,您可以这样做,但是您必须编写一个UDF来计算聚合,并在计算列定义中调用UDF
请注意,虽然可以这样做,但这可能不是最好的主意:是的,您可以这样做,但您必须编写一个UDF来计算聚合,并在计算列定义中调用UDF
请注意,虽然可以这样做,但这可能不是最好的主意:我没有,我不确定计算列会是什么样子。是的,这是可能的。但要做到这一点,计算列必须是UDF的结果。我没有,我不确定计算列会是什么样子。是的,这是可能的。但要做到这一点,计算列必须是UDF的结果。