请求解释一SQL语句的意思

2025-06-20 15:28:43
推荐回答(1个)
回答1:

convert(varchar(10),getdate(),120) 是把当前日期转换yyyy-mm-dd的格式

case when right(convert(varchar(10),getdate(),120),5) < right(convert(varchar(10),
sage,120),5) then datediff(yy , sage , getdate()) - 1
else datediff(yy , sage , getdate())
end
是说,如果当前日期的 月份和日 串(mm-dd) 如果小于 sage 的月份和日 串,
则取 datediff(yy , sage , getdate()) - 1 (当前日期 - sage 得出的年份 再 减1)
否则 datediff(yy , sage , getdate()) (当前日期 - sage 得出的年份)