Довольно новый для BI и SQL в целом, но через несколько месяцев go Я даже не знал, что такое модель, и сейчас я ... пытаюсь создать пакет, который запускается ежедневно.
В данный момент выполняется Excel через PowerQuery, но из-за того, что данных так много, мне приходится каждый месяц вручную менять запрос. Решил перенести его в SSIS.
Требуемый результат: извлеките последнюю дату из моей базы данных и используйте ее в качестве переменной в модели (так как у меня миллионы строк, я хочу загружать строки только с датами, превышающими те, которые уже есть в моей таблице ).
Вот мой Execute SQL Task
:
Я установил переменную для запроса SQL
и пытаюсь использовать его в моем запросе OLE DB следующим образом
Execute SQL Task
: результаты, все в порядке - возвращает дата как "дд / мм / гггг чч24: ми: сс"
SELECT MAX (CONVACCT_CREATE_DATE) AS Expr1 FROM GOMSDailySales
Variable for OLE DB SQL Query
:
"SELECT fin_booking_code, FIN_DEPT_CODE, FIN_ACCT_NO, FIN_PROD_CODE, FIN_PROG_CODE, FIN_OPEN_CODE, DEBIT_AMT, CREDIT_AMT, CURRENCY_CODE, PART_NO, FIN_DOC_NO, CREATE_DATE
FROM cuown.converted_accounts
WHERE (CREATE_DATE > TO_DATE(@[User::GetMaxDate],'yyyy/mm/dd hh24:mi:ss'))
AND (FIN_ACCT_NO LIKE '1%')"
В настоящее время появляется ошибка missing expression
, если я добавлю " ' "
к мой @[User::GetMaxDate]
, я получаю year must be between 0 and xxxx
ошибку.
Что я делаю не так / есть ли более чистый способ сделать это?