类别:

日期和时间函数

DAYNAME

从指定的日期或时间戳中提取三个字母的星期几名称。

备注

要返回星期几的全名,而不是三个字母形式的星期几名称,可使用 EXTRACT 函数、DECODE 函数以及 dayofweek 部分。有关示例,请参阅 EXTRACT

语法

DAYNAME( <date_or_timestamp_expr> )
Copy

实参

date_or_timestamp_expr

日期、时间、时间戳或计算结果为日期、时间或时间戳的表达式。

返回

返回 VARCHAR 数据类型的值。

示例

使用 TO_DATE 函数,获取 2024 年 4 月 1 日星期几的缩写:

SELECT DAYNAME(TO_DATE('2024-04-01')) AS DAY;
Copy
+-----+
| DAY |
|-----|
| Mon |
+-----+

使用 TO_TIMESTAMP_NTZ 函数,获取 2024 年 4 月 2 日星期几的缩写:

SELECT DAYNAME(TO_TIMESTAMP_NTZ('2024-04-02 10:00')) AS DAY;
Copy
+-----+
| DAY |
|-----|
| Tue |
+-----+

获取 2024 年 1 月 1 日至 2024 年 1 月 8 日期间每天的星期几缩写:

CREATE OR REPLACE TABLE dates (d DATE);
Copy
INSERT INTO dates (d) VALUES 
  ('2024-01-01'::DATE),
  ('2024-01-02'::DATE),
  ('2024-01-03'::DATE),
  ('2024-01-04'::DATE),
  ('2024-01-05'::DATE),
  ('2024-01-06'::DATE),
  ('2024-01-07'::DATE),
  ('2024-01-08'::DATE);
Copy
SELECT d, DAYNAME(d) 
  FROM dates
  ORDER BY d;
Copy
+------------+------------+
| D          | DAYNAME(D) |
|------------+------------|
| 2024-01-01 | Mon        |
| 2024-01-02 | Tue        |
| 2024-01-03 | Wed        |
| 2024-01-04 | Thu        |
| 2024-01-05 | Fri        |
| 2024-01-06 | Sat        |
| 2024-01-07 | Sun        |
| 2024-01-08 | Mon        |
+------------+------------+
语言: 中文