我正在尝试将postgres中的整数分钟转换为间隔
他们的任何功能是否会帮助我将其转换为间隔,或者我应该将其除以60并获得最终结果
20 minutes will be like 00:20:00 as result
我正在尝试将postgres中的整数分钟转换为间隔
他们的任何功能是否会帮助我将其转换为间隔,或者我应该将其除以60并获得最终结果
20 minutes will be like 00:20:00 as result
最快的方式是 make_interval
make_interval(years int DEFAULT 0, months int DEFAULT 0, weeks int DEFAULT 0, days int DEFAULT 0, hours int DEFAULT 0, mins int DEFAULT 0, secs double precision DEFAULT 0.0)
所以它看起来像这样(由@Teddy建议)
SELECT make_interval(mins := 20);
要么,
SELECT make_interval(0,0,0,0,0,20);
不是说这是最干净的,如果速度不是我喜欢的问题 *
方法@a_horse_with_no_name提到
SELECT 20 * '1 minute'::interval;
你可以用这个整数来连接 ' minutes'
:
t=# with i as (
select 20::int n
)
select concat(n,' minutes')::interval
from i;
concat
----------
00:20:00
(1 row)
Time: 1.220 ms
更新:
要么: interval '1' minute * n
如a_horse_with_no_name所说