Мне нужно сформировать запрос в Arel, который ранее выполнял операцию CAST. Исходный запрос был как: выберите * от имя_таблицы, где tablename.anniversary> = CAST (? STR_TO_DATE ('% d-% m-% Y-% k-% i-% s'), как DATETIME)Операция AAST Query CAST
(знак вопроса заменяется фактической датой в дальнейшем коде)
Для где состояние, я делаю это:
where(tablename['anniversary']
.gteq("CAST(STR_TO_DATE(#{date_value},'%d-%m-%Y %k:%i') as DATETIME)"))
окончательный результирующий запрос, что я должен получить должен иметь: tablename.anniversary> = '2015-07-13 16:12:00'
Бу t Получаю:
tablename.anniversary >= 'CAST(STR_TO_DATE(13-09-2015 05:33PM,\'%d-%m-%Y %k:%i\') as DATETIME)'
Что я делаю неправильно?
Arel :: Вершины :: Цитируемые («DATETIME»), кажется, не работает, говорит, что это не определено –
отредактировать его, спасибо. Это Arel :: Nodes :: Quoted.new ('DATETIME'), но если он работает, это зависит от вашей БД. –