我想创建一个在特定日期之后选择年份的SQL查询。
基本上我有一张桌子,上面有一个人注册的日期。我想要从注册日期到今天的所有日期(以年为单位)。
实施例: 2013年3月31日注册的人
今天的日期是2016年9月9日
因此SQL查询将返回 2013年,2014年,2015年和2016年
我怎么能做到这一点?
答案 0 :(得分:0)
您可以非常轻松地使用数字创建派生表。然后你可以这样做:
select year(t.date) + n.n
from (select 0 as n union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5
) n join
t
on t.date >= date_sub(curdate(), interval n.n year);
当然,如果您的数据时间过长,您可能需要扩展派生表。