Укажите общую потребляемую мощность для данного металла за последний час процесса - PullRequest
0 голосов
/ 13 июня 2019

У меня есть две таблицы.В главном металлическом столе указаны фактические начальные и конечные метки времени.Таблица интервалов по металлу содержит показания электричества для определенной временной отметки.Мощность для определенного временного интервала представляет собой кумулятивную разницу в потребляемой электроэнергии для всех показаний за интервал времени из данных металлического интервала.Я пытаюсь получить список общей потребляемой мощности для данного металла за последний час процесса.Можете ли вы помочь мне с этим?

Вот пример таблицы:

Metal_Interval_Data

MetalID TreatID Plant   ElctrctyConsumed    ReadingTime 
123456  8       MEAF    21500        2017-07-01 14:01:34.34
123456  8       MEAF    21650        2017-07-01 14:01:44.44
123456  8       MEAF    0            2017-07-01 09:54:53.53
123478  8       MEAF    0            2017-07-01 23:37:19.19
123478  8       MEAF    150          2017-07-02 00:32:08.08

Metal_Master_Data

MetalID MetalStartActual        MetalStartPlanned       MetalEndActual   MetalEndPlanned
123456  2017-07-01 09:51:42.42  2017-06-30 08:59:35.35  2017-07-01 16:05:33.33  2017-06-30 14:59:35.35
123478  2017-07-01 23:30:31.31  2017-06-30 20:00:00.00  2017-07-02 00:33:25.25  2017-06-30 20:59:59.59
124302  2017-07-02 01:42:42.42  2017-07-01 20:51:47.47  2017-07-02 02:17:14.14  2017-07-01 21:51:47.47

Ответы [ 2 ]

1 голос
/ 14 июня 2019

@ mkRabbani правильно, но это специфично для данного идентификатора металла

SELECT A.MetalID,SUM(B.ElctrctyConsumed) TotalConsumed
FROM Metal_Master_Data A
INNER JOIN Metal_Interval_Data B ON A.MetalID = B.MetalID
WHERE B.ReadingTime BETWEEN DATEADD(HH,-1,A.MetalEndActual) 
AND A.MetalEndActual and A.MetalID=@givenmetalid
GROUP BY A.MetalID
1 голос
/ 14 июня 2019

Попробуйте следующий скрипт-

SELECT A.MetalID,SUM(B.ElctrctyConsumed) TotalConsumed
FROM Metal_Master_Data A
INNER JOIN Metal_Interval_Data B ON A.MetalID = B.MetalID
WHERE B.ReadingTime BETWEEN DATEADD(HH,-1,A.MetalEndActual) AND A.MetalEndActual
GROUP BY A.MetalID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...