比较时MS Access查询增加1

时间:2015-12-21 20:39:56

标签: ms-access

SELECT Student_Number,
DATEPART("yyyy", Starting_Date) AS Starting_Year,
DATEPART("yyyy",Ending_Date) AS Ending_Year
FROM   PGME
WHERE  ID = 1

显示如下

Student_Number    Starting_Year Ending_Year
003329497         1994          1999

有什么方法可以与" Starting_Date"和" Ending_Date",如果" Starting_Date" < " Ending_Year"," Starting_Year"将增加一个

Student_Number    Starting_Year Ending_Year
003329497         1994          1999
003329497         1995          1999
003329497         1996          1999
003329497         1997          1999
003329497         1998          1999

1 个答案:

答案 0 :(得分:0)

WHERE
    DatePart('yyyy', Starting_Date) BETWEEN 1994 AND 1998 AND
    DatePart('yyyy', Ending_Date) = 1999

...将自动包括从1994年到1998年的所有起始年份。没有必要增加任何东西。

如果查询产生重复年份,则使用DISTINCT或GROUP BY子句。然而,该查询不会补充缺失的年份。

如果要修改现有记录,请进行UPDATE查询:

UPDATE PGME
SET Starting_Date = DateAdd('yyyy', 1, Starting_Date)
WHERE DatePart('yyyy', Starting_Date) < DatePart('yyyy', Ending_Date)

(我不确定你在问什么)