SELECT заявки.заявка,
DATEDIFF( ss, заявки.дата, подтверждение.дата) AS ВСекундах,
подтверждение.дата - заявки.дата AS КакДата
FROM таблица AS заявки
INNER JOIN таблица AS подтверждение ON заявки.заявка = подтверждение.заявка
WHERE (заявки.действие = 'Создание заявки')
AND (подтверждение.действие = 'Подтверждение заявки')
Или просто:
SELECT заявка,
CONVERT(VARCHAR, DATEDIFF( ss, MAX(дата), MIN(дата)) / 86400) AS Дней,
CONVERT(VARCHAR, MAX(дата) - MIN(дата), 108 ) AS Часов
FROM таблица
GROUP BY заявка
Или, если действий больше двух, старая школа:
SELECT заявка, действие, дата,
дата -
( SELECT TOP 1 дата
FROM таблица AS предыдущее
WHERE (предыдущее.заявка = таблица.заявка) AND (предыдущее.дата < таблица.дата)
ORDER BY дата DESC
) AS КакДата
FROM таблица
Или, если действий больше двух, новые возможности:
SELECT заявка, действие, дата,
дата - LAG( дата ) OVER(PARTITION BY заявка ORDER BY дата) AS КакДата
FROM таблица