I’m beginning my first project in Ruby (and Rails) and running into
an issue. I need to pull some data out of mysql using the date_format
command but ActiveRecord is not appreciating my sql. I’m doing
Table.find_by_sql( [ ‘select column1, date_format("%Y%m%d", column2)
as column2 from table where column1 = ?’, some_data ] );
More or less it looks like that. The key problem seems to be the
date_format has %'s in it and it gives me:
malformed format string - %Y
And the trace:
%' /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/ active_record/base.rb:1418:insanitize_sql_array’
sanitize_sql' /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/ active_record/base.rb:427:infind_by_sql’
Is there any way to handle this situation? I also tried using the raw
connection, but that didn’t seem to take bind variables which I found
unsatisfying, so didn’t pursue it too closely.
Any help/pointers are greatly appreciated.