SSIS — подзапрос получает ошибку

У меня есть приведенный ниже сценарий в редакторе исходного кода в пакете SSIS, и я получаю сообщение об ошибке. Я меняю на Select *, и это работает. Я не уверен, почему это не работает. Он работает в P/SQL. Любая помощь будет оценена по достоинству!

Это работает в моем пакете:

select * from Test

Это не работает в моем пакете (но работает в PL/SQL), и я получаю следующую ошибку.

 select * from (select id, color, shape,
dense_Rank () Over (Partition By id order by id desc as SeqRank)
    ) x

Ошибка: 0xC0202009 в задаче потока данных, источник OLE DB [111]: код ошибки SSIS DTS_E_OLEDBERROR. Произошла ошибка OLE DB. Код ошибки: 0x80040E14.


person Mr John    schedule 09.05.2016    source источник
comment
Итог: я хочу иметь возможность извлекать только те, где Dense_rank = 1 в пакете SSIS.   -  person Mr John    schedule 09.05.2016


Ответы (1)


Лучший подход к этим вопросам - вместо создания подзапроса можно создать CTE. CTE совместим с SSIS.

person Mr John    schedule 09.05.2016