如何解决在 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 举报,一经查实,本站将立刻删除。