

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# TRUNC 函数
<a name="r_TRUNC_date"></a>

截断 `TIMESTAMP` 并返回 `DATE`。

 此函数也可以截断数值。有关更多信息，请参阅 [TRUNC 函数](r_TRUNC.md)。

## 语法
<a name="r_TRUNC_date-synopsis"></a>

```
TRUNC(timestamp)
```

## 参数
<a name="r_TRUNC_date-arguments"></a>

 *timestamp*   
数据类型为 `TIMESTAMP` 的列，或一个隐式计算结果为 `TIMESTAMP` 类型的表达式。  
要返回以 `00:00:00` 作为时间的时间戳值，请将函数结果强制转换为 `TIMESTAMP`。

## 返回类型
<a name="r_TRUNC_date-return-type"></a>

DATE

## 示例
<a name="r_TRUNC_date-examples"></a>

以下示例返回 SYSDATE 函数（返回时间戳）的结果的日期部分。

```
SELECT SYSDATE;

+----------------------------+
|         timestamp          |
+----------------------------+
| 2011-07-21 10:32:38.248109 |
+----------------------------+

SELECT TRUNC(SYSDATE);

+------------+
|   trunc    |
+------------+
| 2011-07-21 |
+------------+
```

以下示例将 TRUNC 函数应用于 `TIMESTAMP` 列。返回类型为日期。

```
SELECT TRUNC(starttime) FROM event
ORDER BY eventid LIMIT 1;

+------------+
|   trunc    |
+------------+
| 2008-01-25 |
+------------+
```

以下示例通过将 TRUNC 函数结果强制转换为 `TIMESTAMP` 来返回时间戳值，其中 `00:00:00` 为时间。

```
SELECT CAST((TRUNC(SYSDATE)) AS TIMESTAMP);

+---------------------+
|        trunc        |
+---------------------+
| 2011-07-21 00:00:00 |
+---------------------+
```