日期格式化,日期格式可以省略,默认为:【yyyy-MM-dd HH:mm:ss】。
语法格式:
format(表达式,日期格式)
| 示例 | 描述 |
|---|---|
| format(now(), 'yyyy-MM-dd') | 获取当前日期,并格式化,比如当前日期为:2024-04-14 17:25:00,返回结果:2024-04-14 |
| format(B1) | 对表示B1进行日期格式化,格式为:【yyyy-MM-dd HH:mm:ss】 |
| format(B1,"yyyy-MM-dd") | 获取表达式B1所有值后,进行日期格式化,格式为:【yyyy-MM-dd】 |
返回当前日期,日期格式可以省略,默认为:【yyyy-MM-dd HH:mm:ss】。
语法格式:
now(日期格式)
| 示例 | 描述 |
|---|---|
| now() | 返回当前日期,格式为:【yyyy-MM-dd HH:mm:ss】 |
| now("yyyy-MM-dd") | 返回当前日期,格式为:【yyyy-MM-dd】 |
返回日期在一年中的第几周。
语法格式:
week("date")
其中date为日期字符串,如果date为空,默认为当前日期。
| 示例 | 描述 |
|---|---|
| week("2010-01-01 00:00:00") | 返回1,代表第一周 |
返回日期星期数。返回值为0-6之间,0代表星期日,1代表星期一,依此类推。
语法格式:
weekday("date")
其中date为日期字符串,如果date为空,默认为当前日期。
| 示例 | 描述 |
|---|---|
| weekday("2002-03-17 00:00:00") | 返回0,代表星期日 |
获取给定日期在一年中的第几天。
语法格式:
getYearDay("date", day)
其中date为日期字符串或者日期函数;
day为整数,要获取的一年中的第几天。
| 示例 | 描述 |
|---|---|
| getYearDay(now(), 2) | 比如当前日期为:2010-01-01 00:00:00, 则返回2010-01-02 |
返回起始日期偏移指定月数后的日期,自动适配月末日期、闰年及闰日,规则与Excel EDATE函数一致。
语法格式:
EDATE("date", months)
其中date为日期字符串或者日期函数;
months为整数,偏移的月数,正数表示向后加月,负数表示向前减月,0则返回原日期。
| 示例 | 描述 |
|---|---|
| EDATE(now(), 3) | 比如当前日期为:2024-05-20 14:30:00,则返回2024-08-20 |
| EDATE("2024-01-31", 1) | 1月31日向后偏移1个月,适配2月最后一天,返回2024-02-29 |
| EDATE("2024-02-29", 12) | 闰日向后偏移12个月,适配平年2月最后一天,返回2025-02-28 |
| EDATE("2024-05-20 10:20:30", -2) | 带时分秒的日期自动忽略时分秒,向前偏移2个月,返回2024-03-20 |
基于当前日期,按照给定的年份偏移量获取指定的日期。
该函数遵循 Excel 中 YEAR(TODAY()) + offset 的使用习惯,
常用于获取上一年、当年或下一年的某个固定日期(如第一天)。
语法格式:
YEAR_OFFSET_DATE(offset, month, day)
其中:
offset 为整数,表示相对于当前年份的偏移量,
0 表示当前年,-1 表示上一年,1 表示下一年;
month 为整数,表示月份(1~12);
day 为整数,表示日期。
函数返回格式为 yyyy-MM-dd 的日期字符串,
支持正数和负数年份,适用于 SQL 参数、报表展示及时间计算场景。
| 示例 | 描述 |
|---|---|
| YEAR_OFFSET_DATE(0, 1, 1) | 获取当前年的第一天,例如当前日期为 2026-02-04,则返回 2026-01-01 |
| YEAR_OFFSET_DATE(-1, 1, 1) | 获取上一年的第一天,例如当前日期为 2026-02-04,则返回 2025-01-01 |
| YEAR_OFFSET_DATE(1, 12, 31) | 获取下一年的最后一天,例如当前日期为 2026-02-04,则返回 2027-12-31 |