MonthFormate time
Apr-18 14.53
May-18 1.78
Jun-18 7.33
Jul-18 10.00
Aug-18 46.76
Sept-18 23.64
Oct-18 41.34
Nov-18 NULL
Dec-18 NULL
Jan-19 134.80
Feb-19 1.69
Mar-19 98.06
获取当前年份
select *
from #ResultData
WHERE YEAR(CONVERT(date, '01-' + Monthformat)) = YEAR(GETDATE()) - 1;
获取上一年
select *
from #ResultData
WHERE YEAR(CONVERT(DATE, '01-' + Monthformat)) = YEAR(GETDATE())
AND MONTH(CONVERT(DATE, '01-' + Monthformat)) <= MONTH(GETDATE());
答案 0 :(得分:0)
那么,如何使用字符串呢?
select rd.*
from #ResultData rd
where '20' + right(monthformat, 2) = datename(year, getdate())
以及上一年:
where '20' + right(monthformat, 2) = datename(year, dateadd(year, -1, getdate()))
假定日期是2000年以来的。如果不是,则可以添加其他逻辑来处理更早的日期。