DATE_PART 函数 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

DATE_PART 函数

DATE_PART 从表达式中提取日期部分值。DATE_PART 是 PGDATE_PART 函数的同义词。

语法

DATE_PART(datepart, {date|timestamp})

Arguments

datepart

函数运行的日期值的特定部分(例如年、月或日)的标识符文本或字符串。有关更多信息,请参阅日期或时间戳函数的日期部分

{date|timestamp}

日期或时间戳列,或隐式转换为日期或时间戳的表达式。表达式必须是包含指定日期部分的日期或时间戳表达式。

返回类型

DOUBLE

示例

DATE_PART 函数的原定设置列名是 pgdate_part。有关以下示例中使用的数据的更多信息,请参阅示例数据库

以下示例从时间戳文本中查找分钟。

SELECT DATE_PART(minute, timestamp '20230104 04:05:06.789'); pgdate_part 5

以下示例从时间戳文本中查找周编号。周编号计算遵循 ISO 8601 标准。有关更多信息,请参阅 Wikipedia 中的 ISO 8601

SELECT DATE_PART(week, timestamp '20220502 04:05:06.789'); pgdate_part 18

以下示例从时间戳文本中查找月份中的某个日期。

SELECT DATE_PART(day, timestamp '20220502 04:05:06.789'); pgdate_part 2

下面的示例从时间戳文本中查找星期几信息。周编号计算遵循 ISO 8601 标准。有关更多信息,请参阅 Wikipedia 中的 ISO 8601

SELECT DATE_PART(dayofweek, timestamp '20220502 04:05:06.789'); pgdate_part 1

以下示例从时间戳文本中查找世纪。世纪计算遵循 ISO 8601 标准。有关更多信息,请参阅 Wikipedia 中的 ISO 8601

SELECT DATE_PART(century, timestamp '20220502 04:05:06.789'); pgdate_part 21

以下示例从日期文本中查找月份。

SELECT DATE_PART(month, date '20220502'); pgdate_part 5

以下示例将 DATE_PART 函数应用于表中的列。

select date_part(w, listtime) as weeks, listtime from listing where listid=10; weeks | listtime ------+--------------------- 25 | 2008-06-17 09:44:54 (1 row)

您可以用全名或缩写来命名日期部分;在这种情况下,w 代表星期数。

星期日期部分返回一个从 0-6 整数,从星期日开始。将 DATE_PART 与 dow (DAYOFWEEK) 结合使用以查看星期六的活动。

select date_part(dow, starttime) as dow, starttime from event where date_part(dow, starttime)=6 order by 2,1; dow | starttime -----+--------------------- 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 ... (1147 rows)