选择正确的日期函数
应用对象
Access 2013
Access 提供内置函数,可在 表达式 中使用来格式化、创建、分析和计算日期和时间。 选择与你想要执行的操作匹配的表。
我想。。。
以特定格式显示日期或时间
以所需格式显示日期。 Result 列假定 [StartDate] 字段包含日期/时间值 2012 年 1 月 11 日 17:30:15。
| 函数 | 用途 | 示例 | 结果 |
|---|---|---|---|
| 格式* | 用于创建自定义日期/时间格式的通用格式函数。 | 格式 ([StartDate],“yyyy-mm-dd”) | 2012-01-11 |
| FormatDateTime* | 将 5 种内置日期/时间格式之一应用于值。 | FormatDateTime ([StartDate],vbLongDate) | 2012 年 1 月 11 日,星期三 |
| MonthName* | 将数字转换为月份名称。 如果提供的数字超出了 1-12 的范围,则返回错误。 | MonthName (12) | 12 月 |
| WeekdayName* | 将数字转换为工作日名称。 如果提供的数字超出了 1-7 的范围,则返回错误。 | WeekdayName (2) | 星期一 |
* 在 Access Web 应用中不可用。
将日期或时间拆分为多个部分
有时,只需知道日期/时间值的一部分,例如年份或分钟。 这些函数都返回对应于要查找的间隔的整数值。 Result 列假定 [StartDate] 包含日期/时间值 2012 年 1 月 11 日 17:30:15。
| 函数 | 用途 | 示例 | 结果 |
|---|---|---|---|
| 年 | 返回日期/时间值的年份部分。 | 年 ([开始日期]) | 2012 |
| 月 | 返回日期/时间值 (1 到 12) 的月份部分。 | 月份 ([开始日期]) | 1 |
| 一天 | 返回日期/时间值 (1 到 31) 的日期部分。 | Day ([StartDate]) | 11 |
| 工作日* | 返回 (1 到 7) 的星期几。 默认情况下,星期日被视为一周中的第一天,但你可以将另一天指定为第一天。 | 工作日 ([开始日期]) | 4 |
| 小时* | 返回日期/时间值 (0 到 23) 的小时部分。 | Hour ([StartDate]) | 17 |
| 分钟* | 返回日期/时间值 (0 到 59) 的分钟部分。 | Minute ([StartDate]) | 30 |
| 第二* | 返回日期/时间值 (0 到 59) 的秒部分。 | Second ([StartDate]) | 15 |
| DatePart | 上述函数的可配置版本,可在其中指定所需的日期/时间值的哪一部分。 | DatePart (“yyyy”,[StartDate]) | 2012 |
* 在 Access 应用中不可用。
将数字和文本转换为日期和时间
Access 将日期存储为双精度浮点数。 例如,2012 年 1 月 11 日下午 5:30 存储为 40919.72917。 小数点左侧的整数部分表示日期。 小数点右侧的小数部分表示时间。 这些函数可帮助你从其他值(如整数或文本)创建此浮点数。
| 函数 | 用途 | 示例 | 结果 (Access 如何存储) |
|---|---|---|---|
|
DateSerial 注意: 在 Access 应用中,使用 DateFromParts 或 DateWithTimeFromParts 函数。 |
从为年、月和日提供的整数生成日期值。 | DateSerial (2012,1,11) | 40919.0 |
| CDate* | 将文本转换为日期/时间值。 处理数字的“日期和时间”部分。 提示: 使用布尔IsDate 函数 确定文本字符串是否可以转换为日期/时间值。 例如,IsDate (“1/11/2012”) 返回 True。 |
CDate (“1/11/2012 17:30”) | 40919.72917 |
| DateValue* | 将文本转换为日期/时间值,但不转换时间部分。 | DateValue (“1/11/2012 17:30”) | 40919.0 |
| TimeValue* | 将文本转换为日期/时间值,但不转换任何日期信息。 | TimeValue (“1/11/2012 17:30”) | 0.72917 |
|
TimeSerial 注意: 在 Access 应用中,使用 TimeFromParts 或 DateWithTimeFromParts 函数。 |
从为小时、分钟和秒提供的整数生成时间值。 | TimeSerial (17,30,15) | 0.72934 |
* 在 Access 应用中不可用。
加减日期
通过这些函数,可以向日期添加或减去间隔,并计算两个日期/时间值之间的差值。
| 函数 | 用途 | 示例 | 结果 |
|---|---|---|---|
| DateAdd | 向日期/时间值添加特定间隔 (,例如 2 个月或 3 小时) 。 若要减去,请使用负数作为第二个参数。 | DateAdd (“m”, 1, “1/11/2012”) | 2/11/2012 |
| DateDiff | 确定两个日期/时间值之间的时间间隔 ((如天或分钟)) 的数目。 注意: 请记住,还可以只从另一个日期值中减去一个日期值来获取它们之间的天数,例如,#2/15/2012# - #2/1/2012# = 14。 |
DateDiff (“d”、“1/11/2012”、“4/15/2012”) | 95 |
请参阅如何 计算两个日期之间的天数。
插入今天的日期或当前时间
使用这些函数确定当前日期或时间。 “结果”列假定当前系统日期/时间是 2012 年 1 月 11 日 17:30:15。
| 函数 | 用途 | 示例 | 结果 |
|---|---|---|---|
| 现在 | 返回当前系统日期和时间。 | Now() | 2012/1/11 下午 5:30:15 |
|
日期 注意: 在 Access 应用中,使用 Today 函数。 |
返回当前系统日期。 | Date() | 1/11/2012 |
| 时间* | 返回当前系统时间。 | 时间 () | 下午 5:30:15 |
| 计时 器* | 返回自午夜以来经过的秒数。 | 计时器 () | 63015 |
* 在 Access 应用中不可用。