我有一个专栏将学生学年(数据类型:INT)存储为</ p>
2010年夏季= 201100
2010年秋季= 201110
2010年春季= 201120
如果当前学年是2016年春季,即201720
如何找到年份中的日期之间的差异?
答案 0 :(得分:0)
将整数值转换为Datetime值(例如,201120变为struct Struct
{
inline Struct(const std::string& text, int n) : _text(text), _n(n) {}
inline Struct(const Struct& other) : _text(other._text), _n(other._n) {}
const std::string _text;
const int _n;
Struct& operator=(const Struct&) = delete;
};
等),然后使用DateDiff()。
答案 1 :(得分:0)
也许只使用LEFT
,因为你只需要几年。
DECLARE @academic_year INT = 201100
DECLARE @current_academic_year INT = 201720
SELECT CAST(LEFT(@current_academic_year, 4) AS INT) - CAST(LEFT(@academic_year, 4) AS INT)