常用日期时间函数-网行者
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


常用日期时间函数

发表时间:2012/5/1 9:12:48 评论(3) 浏览(17341)  评论 | 加入收藏 | 复制
   
摘 要:这里特别推荐WeekdayName() 函数、MonthName() 函数,显示中文的星期名与月份
正 文:

这里特别推荐WeekdayName() 函数、MonthName() 函数,将日期转换为中文星期名与月份,如"星期一"、"五月"

一、Date() 函数、Now() 函数和 Format() 函数

Select Date(), Now();

Date() 函数以短日期格式返回当前日期。Now() 函数返回当前日期和时间。

Select Format(Now(), "dd mmmm yyyy");

您可以对日期值使用 Format() 函数来指定要用于该日期的日期格式。此示例查询以长日期格式 (01 December 2003) 返回当前日期。

 

二、Day() 函数、WeekDay() 函数、Month() 函数和 Year() 函数

Select HireDate, Day(HireDate) AS Day,

Weekday(HireDate) AS WeekDay,

Month(HireDate) AS Month, Year(HireDate) AS Year

FROM Employees;

此查询可从“雇员”表中返回每个雇员的雇用日期、雇用日、雇用日是星期几、雇用月份以及雇用年份。请注意,WeekDay() 函数返回一个指示星期几的数值。

 

三、DatePart() 函数

Select *  FROM Employees

Where DatePart("yyyy", BirthDate) < 1960;

此查询可从“雇员”表中返回出生日期早于 1960 年的所有雇员。DatePart() 函数可用于提取指定日期的各个部分,例如日、月或年。

 

四、DateDiff() 函数

Select EmployeeID, FirstName, BirthDate,

DateDiff("yyyy", BirthDate, Date()) AS Age

FROM Employees;

此查询可从“雇员”表中返回每个雇员的雇员 ID、名字、出生日期和年龄。DateDiff() 函数返回两个指定日期值的差或时滞(用日、月、年或小时、分钟和秒钟等时间单位表示)。

 

五、DateAdd() 函数

Select EmployeeID, FirstName, HireDate,

DateAdd("yyyy", 10, HireDate)

FROM Employees;

此查询可从“雇员”表中返回雇员 ID、名字、雇用日期以及雇员在公司服务满 10 年后的日期。DateAdd() 函数可在某一日期上增加指定数目的时间单位(例如日、月或年),然后返回所得到的值。
您可以直接在日期值上添加数值。这样做会以天为单位增加该日期值,如下面的示例所示:

Select Date() + 1 ;

此查询可在当前日期上增加一天,然后返回得到的日期值。

 

六、DateValue() 函数

Select DateValue("20 Nov 2003") AS ValidDate;

DateValue() 函数验证输入字符串是否为有效日期。如果输入字符串被识别为有效日期,则会以短日期格式返回该日期。如果输入字符串未被识别为有效日期,则返回“标准表达式中数据类型不匹配”语句。DateValue() 函数可识别各种日期格式,例如 mm dd yyyydd mm yyyydd mmm yyyy dd mmm yyyy hh:mm:ss 长日期格式。

 

七、DateSerial() 函数

Select DateSerial( 2003,  03, 1-1);

DateSerial() 函数返回年、月和日的指定输入参数的日期值。输入参数可以是包含算术运算的表达式。DateSerial() 函数会先计算输入参数中的表达式,然后返回得到的日期值。
此示例查询返回 2003 2 月的最后一天。该日期最后一个输入参数的值为 1 1。结果则将月参数计算为 2

 

八、对日期值应用比较运算符

您可以使用下列比较运算符在表达式和查询中比较日期值:

<(小于)

>(大于)

<=(小于或等于)

>=(大于或等于)

<>(不等于)

Select * FROM Employees

Where HireDate >= DateValue(" 10/01/1993")

AND HireDate <= DateValue("12/31/1993");

此查询使用 >= <= 比较运算符验证雇员的雇用日期是否处于两个指定日期之间的范围内。它将提取在 1993 年最后一个季度中雇用的所有雇员的记录。

Select * FROM Employees

Where HireDate <> Date();

此查询使用不等于比较运算符提取雇用日期不等于当前日期的所有雇员的记录。

 

九、WeekdayName() 函数

Select WeekdayName(1, False, 1) AS FirstWeekDayName;

WeekdayName() 函数会返回一个字符串,用于指示第一个参数中指定的中文星期几。返回的星期几字符串取决于第三个参数。此参数设置一周中的第一天。第二个参数设置为 False,用于指定不得缩写星期几的名称。
此示例查询返回值“Sunday”作为一周的第一天。

 

十、MonthName() 函数

Select MonthName(1);

MonthName() 函数会返回一个字符串,用于指示指定月份编号(从 1 12)所代表的中文月份名称。输入参数也可以是表达式,如以下查询所示:

Select MonthName( DatePart("m", Date()) );

此查询可返回当前月份的中文名称。


Access软件网交流QQ群(群号:198465573)
 
 相关文章
【Access函数】Access日期时间函数  【漏蛧尐魚℡  2013/1/17】
【Access扫盲知识】日期时间相减得出年数差的示例,DateDi...  【麥田  2013/2/11】
【Access扫盲知识】日期时间相减得出季度差的示例,DateDi...  【麥田  2013/2/16】
【Access扫盲知识】日期时间相减得出年数,月数,季度,天数差的...  【麥田  2013/2/19】
【Access源码示例】日期区间段查询示例,日期时间段查询示例,开...  【麥田  2013/3/13】
常见问答
技术分类
相关资源
文章搜索
关于作者

网行者

文章分类

文章存档

友情链接