和博士后一起工作,我需要把总分钟数转换成1h-1m的格式。
我是通过下面的代码来实现的
replace(
(119 / 60 + (119 % 60) / 100.0)::text,
'.',
'h '
) + 'm'
返回1h 5900000000000000000M
119只是我添加的分钟数的一个示例,但这将在一个更大的查询上设置
(accumulated_minutes / 60 + (accumulated_minutes % 60) / 100.0)::text,
有没有一种方法可以在不增加额外精度的情况下将其转换为文本?
2条答案
按热度按时间esbemjvw1#
让数据库帮你完成繁重的任务!你可以把分钟数变成
interval
数据类型和使用to_char()
用于格式化:db小提琴演示:
如果要抑制前导
0
在小时和分钟上,然后:uqjltbpv2#
你可以先把商或模转换成整数,然后再转换成文本。
这个输出
1h 59m
.