Я новичок в oracle sql, этот код работал бы в tsql, но, похоже, не работает в oracle sql.Я получаю столбец
ORA-00918: с неопределенным определением
.Я не могу определить, где проблема, вы можете помочь?
проблема, кажется, в соединении, потому что, когда я заменяю объединение простым предложением where, ошибка исчезает
WITH cte1 AS
(select t1.CONTAINER_NUMBER as t1_CONTAINER_NUMBER,
t1.LAST_UPDATE_TIME as t1_LAST_UPDATE_TIME,
t1.TRANSACTION_TIME as t1_TRANSACTION_TIME,
t1.EVENT,
t1.LINE_OPERATOR,
t1.BOOKING_NUMBER,
t1.ISO_SIZE_TYPE,
t1.GROSS_WEIGHT,
t1.CATEGORY,
t1.STATUS,
t1.POS_MODE,
t1.ARR_MODE,
t1.ARR_CARRIER,
t1.ARR_VOYAGE,
t1.DEP_CARRIER,
t1.DEP_MODE,
t1.DEP_CARRIER,
t1.LOAD_PORT,
t1.DESTINATION_PORT,
t1.TRUCKER_LICENSE,
t1.FROM_RAILCAR_NAME,
t1.TO_RAILCAR_NAME,
t1.YARDARRIVAL_TIME,
t1.YARDDEPARTURE_TIME,
t1.CUSTOMER_REFERENCE,
t1.CONTAINER_LENGTH,
t1.CONTAINER_WIDTH,
t1.CONTAINER_HEIGHT,
t1.TERMINAL_ARRIVAL_TIME,
t1.TERMINAL_DEPARTURE_TIME
from CONTAINER_HISTORY_MVW t1
where t1.CONTAINER_NUMBER = 'BEAU2105501'
and t1.EVENT is not null),
cte2 AS
(select t2.CONTAINER_NUMBER as t2_CONTAINER_NUMBER,
t2.LAST_UPDATE_TIME as t2_LAST_UPDATE_TIME,
t2.TRANSACTION_TIME as t2_TRANSACTION_TIME,
t2.CREATION_TIME,
t2.EQUIPMENT_MOVE_TYPE,
t2.FROM_EQUIPMENT_NUMBER
from CONTAINER_HISTORY_MVW t2
where t2.CONTAINER_NUMBER = 'BEAU2105501'
and t2.EVENT is null)
SELECT cte1.t1_TRANSACTION_TIME,
cte1.t1_CONTAINER_NUMBER,
cte1.t1_LAST_UPDATE_TIME,
cte1.EVENT,
cte1.BOOKING_NUMBER,
cte2.t2_TRANSACTION_TIME,
cte2.CREATION_TIME,
cte2.EQUIPMENT_MOVE_TYPE,
cte2.FROM_EQUIPMENT_NUMBER
from cte1
inner join cte2
on cte1.t1_CONTAINER_NUMBER = cte2.t2_CONTAINER_NUMBER
and cte1.t1_LAST_UPDATE_TIME = cte2.t2_LAST_UPDATE_TIME
order by cte1.t1_TRANSACTION_TIME, cte2.t2_TRANSACTION_TIME