#sql #date-arithmetic
#sql #дата-арифметика
Вопрос:
У меня есть таблица данных со следующими столбцами: введите описание изображения здесь, где
- datetime: событие in_time и Out_time
- Серьезность: уникальна для каждого сообщения
- Сообщение: сообщение о событии типа = ТРЕВОГА ОТКЛЮЧЕНИЯ ВЕНТИЛЯТОРА, ТРЕВОГА ОТКЛЮЧЕНИЯ ЦИРКУЛЯЦИОННОГО НАСОСА, ТРЕВОГА ОТКЛЮЧЕНИЯ КОНВЕКЦИИ, ТРЕВОГА ОТКЛЮЧЕНИЯ ЛИФТА, ТРЕВОГА ОТКЛЮЧЕНИЯ ПЕРЕКРЕСТНОГО КОНВЕКЦИИ
- Активный: если событие включено, то активным будет 1, иначе 0
Я должен определить разницу между событием во времени и временем выхода.
Я попытался использовать CTE и использовать отдельную таблицу для времени начала и окончания события:
Использование этой команды (для времени события):
SELECT
[DATETIME], [Severity], [Message], [Active], [Acked]
INTO
intime
FROM
[master].[dbo].[DATATABLE]
WHERE
ACTIVE = 1
Теперь моя таблица данных с временем события — «intime». Таблица с записью времени ИСТЕЧЕНИЯ:
SELECT
[DATETIME], [Severity], [Message], [Active], [Acked]
INTO
OUTIME
FROM
[master].[dbo].[DATATABLE]
WHERE
ACTIVE = 0
Как я могу получить разницу во времени между базовыми событиями между обеими таблицами?
Комментарии:
1. Предоставьте образцы данных, желаемые результаты и тег для используемой базы данных.
2. Ключ — это столбец сообщений — необходимо сопоставить время работы лифта с временем работы лифта (не с временем работы вентилятора). Необходимо учитывать два времени ожидания лифта подряд без промежуточного времени ожидания лифта или два времени ожидания подряд…