所以有一个非常类似的论坛帖子,但我无法运行这些命令。我正在使用SQL Server 2008 R2并需要帮助获得当前的学年。
基本上我需要一种方法来使用当前日期生成当前学年。从今年8月到明年8月,这将是1学年。
实施例。 2015年8月至2016年7月将需要拉升2015年和2016年8月开始2016年将需要拉升。
我仍然是SQL的新手,所以任何帮助都会非常感激。
答案 0 :(得分:0)
听起来你正在寻找这个:
IF Month(GetDate()) >=8
BEGIN
SELECT Year(GetDate())
END
ELSE
BEGIN
SELECT Year(GetDate())-1
END
编辑:
要在select语句中使用where where子句:
DECLARE @currentSchoolYear INT
IF Month(GetDate()) >=8
BEGIN
SELECT @currentSchoolYear = Year(GetDate())
END
ELSE
BEGIN
SELECT @currentSchoolYear = Year(GetDate())-1
END
SELECT * FROM dbo.dates
WHERE CASE WHEN Month(datevalue) >=8 THEN Year(datevalue)
ELSE Year(datevalue)-1
END = @currentSchoolYear
明显取代" dbo.dates"使用您的表名和" datevalue"与你比较的任何字段。这将返回当前学年的行
答案 1 :(得分:-2)
example.com/page