获取sql中两个日期之间的数据

时间:2017-06-01 18:22:42

标签: sql sql-server date stored-procedures

我必须在两个日期之间从表中获取数据。

该表没有日期格式列,因为它有两列,一列是月份,另一列是年份。

ID      UsrId       Month  Year  
212175  135564934   6      2016
212175  135564934   11     2013
212175  135564934   3      2014
212175  135564934   7      2015
212175  135564934   2      2016
212175  135564934   1      2016

我想获得两个日期之间的行(mm / yyyy),如2014年1月1日至12月12日。

这应该在一个存储过程中,它将两个输入参数作为begindate和enddate。

谢谢!

1 个答案:

答案 0 :(得分:2)

一种简单的方法是使用算术:

where year * 100 + month between 201410 and 201612

如果你想要日期算术:

where datefromparts(year, month, 1) between '20141001' and '20161201'