2016-11-23 2 views
0

Я использую исходные данные как базу данных MySQL и сравнивая даты в таблице с датами, сгенерированными системой в Pentaho.Не можете сравнивать даты в Pentaho Kettle

Я использую запрос, как показано ниже:

Select * FROM trvs_consumer WHERE created_at > ? 

значение для 'created_at', как: 2016/07/28 00:00:00.000000000

значение '?' от Pentaho информация о системе, как: 1900/01/01 04:30:00.000

При запуске запроса, я получаю ошибку ниже:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?' at line 25 

Но, когда я запускаю запрос без ИНЕК, она работает идеально. Какие-либо предложения ?

+1

Возможно подключение к системе в Pentaho неправильно. – sagi

+0

@sagi, я проверил подробные журналы и нашел ошибку как: У вас возникла ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с?? по строке 25 Любая идея? – Sarang

+0

Вы можете посмотреть на SQL, который был выполнен? Я подозреваю, что дата не экспортируется в правильном формате. – sagi

ответ

1

Вы должны использовать правильный формат даты для использования в запросе mysql с mysql require it.

Используйте шаг выбора значений и укажите правильный формат даты. Вот пример. В шаге «получить системную дату» мы создаем новую случайную дату. На шаге «Выбор значений» мы назначаем правильный формат даты для mysql. Затем мы можем использовать это новое поле в некоторых запросах. PDI автоматически не распознает правильный формат даты для поставщика db, мы должны позаботиться об этом вручную.

enter image description here

Смежные вопросы