pgsql从“20220903193757”转换为“2022-09-03 19:37:57”
时间: 2023-10-09 22:11:18 浏览: 78
可以使用 PostgreSQL 内置的日期/时间函数来实现。假设你要将字符串 "20220903193757" 转换为日期时间格式 "2022-09-03 19:37:57",可以使用以下语句:
```
SELECT
TO_TIMESTAMP('20220903193757', 'YYYYMMDDHH24MISS') AS datetime;
```
这将返回以下结果:
```
datetime
----------------------------
2022-09-03 19:37:57+08:00
```
其中,TO_TIMESTAMP 函数用于将字符串转换为时间戳,第一个参数是需要转换的字符串,第二个参数是指定字符串的时间格式。在这里,我们使用 'YYYYMMDDHH24MISS' 指定了字符串的格式,其中YYYY表示4位年份,MM表示2位月份,DD表示2位日期,HH24表示24小时制的小时数,MI表示2位分钟数,SS表示2位秒数。
相关问题
pgsql如何将一列“20220903193757”类型数据转换为“2022-09-03 19:37:57”
可以使用 PostgreSQL 内置的日期/时间函数来实现。假设你有一列名为 "datetime_str" 的字符串类型的列,其中包含了类似 "20220903193757" 的数据,你可以使用以下语句将其转换为日期时间格式 "2022-09-03 19:37:57" 并插入到一个新列 "datetime" 中:
```
ALTER TABLE your_table ADD COLUMN datetime TIMESTAMP;
UPDATE your_table SET datetime = TO_TIMESTAMP(datetime_str, 'YYYYMMDDHH24MISS');
```
这将在原有表的基础上添加一个新列 "datetime",并将 "datetime_str" 中的数据转换为日期时间格式插入到 "datetime" 列中。
其中,TO_TIMESTAMP 函数用于将字符串转换为时间戳,第一个参数是需要转换的字符串,第二个参数是指定字符串的时间格式。在这里,我们使用 'YYYYMMDDHH24MISS' 指定了字符串的格式,其中YYYY表示4位年份,MM表示2位月份,DD表示2位日期,HH24表示24小时制的小时数,MI表示2位分钟数,SS表示2位秒数。
pgsql查询列“2023-01-26 19:15:46”最后两位大于等于60
您可以使用如下的 SQL 语句来查询符合条件的行:
```
SELECT * FROM table_name WHERE column_name::time(0)::text LIKE '%60';
```
其中,`table_name` 是您的表名,`column_name` 是您要查询的列名。该 SQL 语句的含义是将 `column_name` 转换成时间类型,然后再将其转换成字符串类型,最后判断字符串中是否包含 `60`。这样就能查询出最后两位大于等于 `60` 的时间。
阅读全文
相关推荐











