我想根据mysql表中的两个字段选择两次记录。
例如我的表有以下数据:
name, created_at, updated_at
"Baran", "2013-09-10 23:56:56", "2013-10-10 23:00:00"
我想按降序排列结果:
name,date
Baran,"2013-10-10 23:00:00"
Baran,"2013-09-10 23:56:56"
是否可能,如果是,那么请建议我如何实现这一目标?
答案 0 :(得分:1)
(SELECT name, created_at as [date] FROM mytable)
UNION all
(SELECT name, updated_at as [date] FROM mytable)
ORDER BY name, [date] desc;
答案 1 :(得分:0)
您可以照常选择记录并在Ruby中创建“重复”:
User.all.flat_map { |user|
[
{name: user.name, date: user.created_at},
{name: user.name, date: user.updated_at}
]
}
#=> [{:name=>"Baran", :date=>"2013-09-10 23:56:56"}, {:name=>"Baran", :date=>"2013-10-10 23:00:00"}]