Генерация отчета каждые 10 минут - PullRequest
0 голосов
/ 30 мая 2011

У меня есть две таблицы температуры и давления с показаниями, как показано ниже, моя первая таблица генерирует значение каждые 10 минут

Первая таблица содержит следующие данные:

Temperature          Time             Date 
28.8      1900-01-01 13:14:54.000   2011-05-25 00:00:00
29.1      1900-01-01 13:15:04.000   2011-05-25 00:00:00
29.4      1900-01-01 13:15:14.000   2011-05-25 00:00:00
29.7      1900-01-01 13:15:24.000   2011-05-25 00:00:00
30        1900-01-01 13:15:34.000   2011-05-25 00:00:00
30.3      1900-01-01 13:15:44.000   2011-05-25 00:00:00
30.6      1900-01-01 13:15:54.000   2011-05-25 00:00:00
30.9      1900-01-01 13:16:04.000   2011-05-25 00:00:00
31.2      1900-01-01 13:16:14.000   2011-05-25 00:00:00

Моя вторая таблица генерирует значение каждые 20 минут, и я сохраняю это значение в базе данных, т.е. Sql Server

Вторая таблица содержит

Pressure         Time                  Date
0.9 1900-01-01 13:14:04.000 2011-05-25 00:00:00
1.7 1900-01-01 13:14:24.000 2011-05-25 00:00:00
2.5 1900-01-01 13:14:44.000 2011-05-25 00:00:00
3.3 1900-01-01 13:15:04.000 2011-05-25 00:00:00
4.1 1900-01-01 13:15:24.000 2011-05-25 00:00:00
4.9 1900-01-01 13:15:44.000 2011-05-25 00:00:00
5.7 1900-01-01 13:16:04.000 2011-05-25 00:00:00
6.5 1900-01-01 13:16:24.000 2011-05-25 00:00:00
7.3 1900-01-01 13:16:44.000 2011-05-25 00:00:00

Я бы хотел, чтобы мои выходные данные вернулись:

Date          Time       Temperature   Pressure
25/05/2011   13:14:54     28.8           0
25/05/2011   13:15:04     29.1           3.3
25/05/2011   13:15:14     29.4           0
25/05/2011   13:15:24     29.7           4.1

И так далее, и пользователь выберет конкретную дату в эту дату, какие показания там есть, он должен показывать, например, если он выберет 25/05/2011, что показания должны отображаться. Я должен связать этот результат с gridview, используя C #.

1 Ответ

2 голосов
/ 30 мая 2011

Если вы не возражаете против возможных пробелов в пропущенных записях даты и времени, достаточно FULL OUTER JOIN.

SELECT  ISNULL(t1.Date, t2.Date)
        , ISNULL(t1.Time, t2.Time)
        , ISNULL(t1.Temperature, 0)
        , ISNULL(t2.Pressure, 0)
FROM    Table1 t1
        FULL OUTER JOIN Table2 t2 ON t2.Date = t1.Date AND t2.Time = t1.Time
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...