我正试图弄清楚如何在两年内每周的每一天每班返回数据。每天有两个12小时的班次。白班(早上6点到晚上6点)夜班(晚上6点到早上6点)。在下面附上的图片是结果,我正在寻找。每列1 DayGas和1 NightGas代表每班一件设备(不是第一天)。下面的select语句不能提供我要查找的数据。它只返回今天的数据。
SELECT DateTm, FurnNbr, sum(usage) Total
FROM GasUsage
Where DateTm >= cast(getdate() as date)
and DateTm < cast(getdate()+1 as date) and FurnNbr > 0
Group By DateTm, FurnNbr Order By FurnNbr
这一个按炉子总数给我上白班。
SELECT FurnNbr, sum(usage) Dayshift
FROM GasUsage
Where DateTm >= DATEADD(HOUR,6,CONVERT(VARCHAR(10), GETDATE(),110)) and DateTm <= DATEADD(HOUR,18,CONVERT(VARCHAR(10), GETDATE()+1,110)) and FurnNbr > 0
Group by FurnNbr
日班按炉计算。
1条答案
按热度按时间atmip9wb1#
似乎您的where语句只选择今天的行
其中datetm比“今天”新,datetm比“明天”旧,furnnbr大于0
你可以试着用“中间”代替,它更容易阅读。。。其中datetm介于“date1”和“date2”之间
如果在gasausage表中公布中的数据是如何构造的,则更容易获得帮助。