在 T-SQL 中对多列的值求和并创建总值的新列的最有效方法是什么?

问题描述

这是我尝试创建视图并添加多个距离列以获得总距离的代码

CREATE
OR ALTER VIEW map_view AS
SELECT     lookup.UniqueID
           lookup.road1,lookup.pavement1,lookup.distance1,lookup.remarks1,lookup.SurveyResult1,lookup.road2,lookup.pavement2,lookup.distance2,lookup.remarks2,lookup.SurveyResult2,lookup.road3,lookup.pavement3,lookup.distance3,lookup.remarks3,lookup.SurveyResult3,lookup.road4,lookup.pavement4,lookup.distance4,lookup.remarks4,lookup.SurveyResult4,lookup.road5,lookup.pavement5,lookup.distance5,lookup.remarks5,lookup.SurveyResult5,lookup.road6,lookup.pavement6,lookup.distance6,SUM(ISNULL(lookup.distance1,0) + ISNULL(lookup.distance2,0) + ISNULL(lookup.distance3,0)
           + ISNULL(lookup.distance4,0) + ISNULL(lookup.distance5,0)) AS Totaldistance
FROM 

lookup 

Totaldistance(select 语句的最后一行)是距离(distance1、distance2 等)列中值的聚合。距离列中存在空值,这就是我使用 ISNULL 的原因。什么方法实现聚合,性能最优。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)