flinksql中to_timestamp用法
时间: 2024-02-08 07:35:57 浏览: 328
MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 参数
`TO_TIMESTAMP` 是 Flink SQL 中的一个函数,用于将一个字符串表示的时间戳转换成 `TIMESTAMP` 类型。
其基本语法如下:
```sql
TO_TIMESTAMP(string_expr [, format_string])
```
其中,`string_expr` 表示待转换的字符串,`format_string` 表示字符串的格式,默认情况下为 `yyyy-MM-dd HH:mm:ss`。
例如,如果 `string_expr` 的值为 `'2021-09-01 22:30:00'`,则可以使用以下语句将其转换为 `TIMESTAMP` 类型:
```sql
SELECT TO_TIMESTAMP('2021-09-01 22:30:00') as ts;
```
输出:
```
+---------------------+
| ts |
+---------------------+
| 2021-09-01 22:30:00 |
+---------------------+
```
如果 `string_expr` 的值不满足默认的格式,可以通过 `format_string` 参数来指定格式。例如,如果 `string_expr` 的值为 `'2021/09/01 10:20:30'`,则可以使用以下语句将其转换为 `TIMESTAMP` 类型:
```sql
SELECT TO_TIMESTAMP('2021/09/01 10:20:30', 'yyyy/MM/dd HH:mm:ss') as ts;
```
输出:
```
+---------------------+
| ts |
+---------------------+
| 2021-09-01 10:20:30 |
+---------------------+
```
需要注意的是,`format_string` 中的格式符必须与 `string_expr` 中的时间格式相匹配,否则会导致转换失败。
阅读全文