我如何在这里解决问题.
SELECT
Tcg.ProviderID,
ISNULL(DATEDIFF(DAY , AEenc.StartDateTime , AEenc.EndDateTime),0) + ISNULL(DATEDIFF(DAY , IPenc.AdmissionDate , IPenc.ENDDate),0) as 'IPBedDays'
FROM #TargetClientGroup Tcg
INNER JOIN AEncounterDetail as AEenc
ON AEenc.ProviderID = Tcg.ProviderID
INNER JOIN [PEncounterDetail] as IPenc
ON IPenc.ProviderID = Tcg.ProviderID
--WHERE AEenc.StartDateTime >= @ReportDate
GROUP BY Tcg.ProviderID
Run Code Online (Sandbox Code Playgroud)
我收到错误,因为它不包含在聚合函数或GROUP BY子句中.
ISNULL is not an aggregation function, and as a consequence, when you're grouping it won't be performing as expected. I would recommend SUM, MIN, MAX, or AVG wrapped around your ISNULL statement dependant on what you're trying to achieve with your query.
| 归档时间: |
|
| 查看次数: |
4319 次 |
| 最近记录: |