Я пытаюсь сообщить о деятельности. У меня есть таблица, которая включает в себя «номер остановки», но этот номер остановки не имеет ничего общего с фактической остановкой, на которой происходила активность (остановка 1 прибытие / отправление, остановка 2 прибытие / отправление). Поэтому я хочу нумеровать остановки с помощью ROW_NUMBER () ...
select
WH.SEGMENT_NB,
WH.STOP_NB,
ROW_NUMBER () OVER(PARTITION BY WH.SEGMENT_NB, WH.STOP_NB ORDER BY WH.STOP_NB) as Stop,
MAX(CASE WHEN WH.WORK_ACTION_TYPE_ID = 'EAA'
THEN WH.CREATE_TS
END) AS Actual_Arrival,
MAX(CASE WHEN WH.WORK_ACTION_TYPE_ID = 'EAD'
THEN WH.CREATE_TS
END) AS Actual_Departure,
WH.CREATED_BY_TX AS ENTERED_BY
from VASDW.TNT_WORK_HISTORY WH
join VASDW.TNT_WORK_ACTION_TYPE WA on WA.WORK_ACTION_TYPE_ID = WH.WORK_ACTION_TYPE_ID
and WA.RECORD_DELETE_FG = 'N'
where WH.WORK_ACTION_TYPE_ID in('EAA','EAD')
and wh.segment_nb = 15931846
GROUP BY WH.SEGMENT_NB, WH.STOP_NB, WH.CREATED_BY_TX
ORDER BY WH.SEGMENT_NB, WH.STOP_NB
Я ожидал бы увидеть это:
Segment_Nb STOP_NB STOP
15931846 12345 1
15931846 12345 1
15931846 23456 2
Но он читает STOP 1,2,1. Есть идеи, что мне нужно исправить? ТИА.