我想按日期分组()。我有3条记录与created_at
柱:如何按日期分组?
2011-12-03 08:00:24, 2011-12-03 08:12:10, 2011-12-04 09:00:00
我想只有年,月,日组不分时间。所以对于上面的例子。它应该只返回两行:
2011-12-03 and 2011-12-04
我应该怎么做?
我想按日期分组()。我有3条记录与created_at
柱:如何按日期分组?
2011-12-03 08:00:24, 2011-12-03 08:12:10, 2011-12-04 09:00:00
我想只有年,月,日组不分时间。所以对于上面的例子。它应该只返回两行:
2011-12-03 and 2011-12-04
我应该怎么做?
这应该允许您按年,月,日
SELECT group_by_column
, DATE_FORMAT(created_at, '%Y')
, DATE_FORMAT(created_at, '%m')
, DATE_FORMAT(created_at, '%d')
FROM my_table
GROUP BY group_by_column
,或者如果你想要做的他们都在一起。
SELECT group_by_column
, DATE_FORMAT(created_at, '%Y%m%d')
FROM my_table
GROUP BY group_by_column
在Rails 3中,AR:'Foobar.group('DATE_FORMAT(created_at,“%Y%m%d”)')'。感谢那 –
... group by date(date_time_column)
你尝试以下?
SELECT
DATE(created_at) AS created_date
FROM
my_table
GROUP BY
created_date
是的,这按日期和时间分组 –
MySQL许可证GROUP BY DATE(created_at)
。因此,这将在ActiveRecord中翻译为.group(DATE(created_at))
实际上,该确切示例可在Rails Guides on ActiveRecord querying中找到。
您可以使用Date()函数。
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date
mysql> SELECT DATE('2003-12-31 01:02:03');
-> '2003-12-31'
这是甲骨文/ MySQL的等? – Ben
嗨,Ben,这是MySQL –