无法在SQL Server中用分组条件子句编写具有having子句

问题描述 投票:0回答:1

我想显示特定日期的每日风扇运行时间消耗。 im能够在编写hading子句以获取日期之间的记录出错的同时获取日期之间的记录。

列'DeviceTimeStamp'在HAVING子句中无效,因为它是不在聚合函数或GROUP BY子句中。

sql查询

    SELECT 
    CAST([DeviceTimeStamp] AS DATE) as Date,
    round(MAX(CAST([Fan1Hrs] as float))-MIN(CAST([Fan1Hrs] as float)),2) as Units
    FROM RawData
    where DeviceImei = '81'
    GROUP BY CAST([DeviceTimeStamp] AS DATE)
    having DeviceTimeStamp > '2020-03-23' and DeviceTimeStamp < '2020-03-23' 
    ORDER BY CAST([DeviceTimeStamp] AS DATE) desc
sql-server group-by having
1个回答
0
投票
SELECT 
    CAST([DeviceTimeStamp] AS DATE) as Date,
    round(MAX(CAST([Fan1Hrs] as float))-MIN(CAST([Fan1Hrs] as float)),2) as Units
    FROM RawData
   where DeviceImei = '81'
   GROUP BY CAST([DeviceTimeStamp] AS DATE)
   having CAST([DeviceTimeStamp] AS DATE) > '2020-03-23' and CAST([DeviceTimeStamp] AS DATE) < '2020-03-28'
   ORDER BY CAST([DeviceTimeStamp] AS DATE) desc
© www.soinside.com 2019 - 2024. All rights reserved.