WEEKDAY
📄字数 621
👁️阅读量 加载中...
功能描述
返回日期对应的工作日索引。
语法格式
sql
WEEKDAY(expr)输入参数
expr:DATETIME或DATETIME WITH TIME ZONE类型,或能隐式转换为DATETIME或DATETIME WITH TIME ZONE类型的其他类型,参数取值范围:[0001-01-01 00:00:00.000000, 9999-12-31 23:59:59.999999]。
提示
- 因
NULL无具体的类型,所以当参数为NULL时,会产生异常E10100 候选函数出现多义性,需要手动为参数指定具体的类型,如:WEEKDAY(NULL::DATETIME)。
输出结果
返回 INTEGER 类型,返回值范围:[0, 6],输入参数为 NULL 时,输出结果为 NULL。
输出结果含义说明
| 返回值 | 说明 |
|---|---|
| 0 | 表示星期一 |
| 1 | 表示星期二 |
| 2 | 表示星期三 |
| 3 | 表示星期四 |
| 4 | 表示星期五 |
| 5 | 表示星期六 |
| 6 | 表示星期日 |
执行类型
| TYPE | VALUE | 说明 |
|---|---|---|
| NATIVE | 0 | 函数只能在本地计算 |
| VOLATI | 0 | 函数的每次计算值不同 |
| STABLE | 0 | 函数的每次计算值相同 |
| COMPUTE | 0 | 函数支持预计算取值 |
| NOT_CONST | 0 | 函数不支持转常数 |
| HAVE_DEF | 0 | 函数参数有默认值 |
示例
sql
-- 返回 '1987-01-01' 对应的工作日索引
SQL> SELECT WEEKDAY('1987-01-01');
+-------+
| EXPR1 |
+-------+
| 3 |
+-------+
-- 返回 '2022-01-04 12:34:56' 对应的工作日索引
SQL> SELECT WEEKDAY('2022-01-04 12:34:56');
+-------+
| EXPR1 |
+-------+
| 1 |
+-------+扩展
- 数据库还提供了另外一种返回工作日索引的函数,参考 DAYOFWEEK()。
