gpt4 book ai didi

sql - 时间戳格式 - 从 1/1000 秒到 1/100 秒

转载 作者:行者123 更新时间:2023-11-29 11:54:07 25 4
gpt4 key购买 nike

需要将分辨率为 1/1000 秒的时间戳转换为 1/100 分辨率。为此,我可能会使用 to_char(timestamp, text) 格式化函数,但是需要帮助才能在此处使用 text

输入表(注意——这里的时间戳存储为varchar)

+-------------------------+
| ms1000_val |
+-------------------------+
| 2017/02/20 08:27:17.899 |
| 2017/02/20 08:23:43.894 |
| 2017/02/20 08:24:41.894 |
| 2017/02/20 08:28:09.899 |
+-------------------------+

输出表

+------------------------+
| ms100_val |
+------------------------+
| 2017/02/20 08:27:17.89 |
| 2017/02/20 08:23:43.89 |
| 2017/02/20 08:24:41.89 |
| 2017/02/20 08:28:09.89 |
+------------------------+

最佳答案

您可以在括号中指定它,如下所示:

t=# select now()::timestamp(2);
now
------------------------
2017-03-16 09:55:21.15
(1 row)

正如 OP 所注意到的 http://rextester.com/CBZ17212psql 中运行会产生不同的结果:

t=# CREATE TABLE Table1
t-# ("ms1000_val" varchar(23))
t-# ;
CREATE TABLE
t=#
t=# INSERT INTO Table1
t-# ("ms1000_val")
t-# VALUES
t-# ('2017/02/20 08:27:17.892'),
t-# ('2017/02/20 08:23:43.891'),
t-# ('2017/02/20 08:24:41.897'),
t-# ('2017/02/20 08:28:09.893')
t-# ;
INSERT 0 4
t=# select ms1000_val::timestamp(2) as time_formatted
t-# from Table1;
time_formatted
------------------------
2017-02-20 08:27:17.89
2017-02-20 08:23:43.89
2017-02-20 08:24:41.9
2017-02-20 08:28:09.89
(4 rows)

关于sql - 时间戳格式 - 从 1/1000 秒到 1/100 秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42830565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com