当我在ruby中运行以下查询时:
Transaction.all(:select => "created_at, SUM(amount) amount", :group => "created_at.strftime('%Y-%m-%d')", :order => 'created_at')
我在mysql2中遇到以下错误(在mysql中工作):
ActiveRecord::StatementInvalid: Mysql2::Error: FUNCTION created_at.strftime does not exist:
我需要的是按日期对所有交易进行分组(没有时间)。 我可能会重写声明,是否有人可以帮我解决这个问题? 谢谢!
答案 0 :(得分:0)
DATE
function可以满足您的需求。
# mysql> SELECT DATE('2003-12-31 01:02:03');
# -> '2003-12-31'
#
# used in your query:
Transaction.all(
:select => "created_at, SUM(amount) amount",
:group => "DATE(created_at)",
:order => "created_at")