【发布时间】:2016-10-30 07:49:36
【问题描述】:
我有以下查询,我试图返回两个 DateTime 列之间的平均值。
我的问题是它要我按SoftwarePackage1_VersionNumbers.EnvShortName 分组,我不想这样做。
SELECT DBO.softwarepackage1_versionnumbers.envshortname AS [Environment Name],
DBO.softwarepackage1_versionnumbers.currentversionnumber AS [SoftwarePackage1 Current Version Number],
DBO.softwarepackage1_versionnumbers.currentbuildname AS [Current SoftwarePackage1 Build],
DBO.softwarepackage1_versionnumbers.currentlastassociatedchangeset AS [Last Associated Changeset],
DBO.softwarepackage1_versionnumbers.deploymentdate AS [SoftwarePackage1 Deployment Date],
DBO.softwarepackage2_versionnumbers.currentsoftwarepackage2displayedversionnumber AS [SoftwarePackage2ector Displayed Version Number],
DBO.softwarepackage2_versionnumbers.currentsoftwarepackage2fullversionnumber AS [SoftwarePackage2ector Full Version Number],
DBO.softwarepackage2_versionnumbers.currentlastfilewritedatetime AS [SoftwarePackage2ector Last File Write Time],
DBO.softwarepackage2_versionnumbers.deploymentdate AS [SoftwarePackage2ector Deployment Date],
Avg(Datediff(MINUTE, DBO.softwarepackage1_versionnumbers.modifieddatetime, DBO.softwarepackage2_versionnumbers.modifieddatetime)) AS [Last Version Check (UTC)]
FROM DBO.softwarepackage1_versionnumbers
FULL OUTER JOIN DBO.softwarepackage2_versionnumbers
ON DBO.softwarepackage1_versionnumbers.envid = DBO.softwarepackage2_versionnumbers.envid
FULL OUTER JOIN DBO.systemenvironments
ON DBO.softwarepackage1_versionnumbers.envid = DBO.systemenvironments.envid
WHERE ( DBO.softwarepackage1_versionnumbers.deleted = '0' )
AND ( DBO.softwarepackage2_versionnumbers.deleted = 0 )
AND ( DBO.systemenvironments.envtype = 'Development' )
【问题讨论】:
-
平均范围是多少?在结果集中的所有行上?在特定的子范围内?
-
这将是该行的平均值
-
您尝试过我的答案吗?成功了吗?
标签: sql-server tsql sql-server-2016