如何在PostgreSQL中去除时间字段的秒数?
解决PostgreSQL查询时间不含秒数的问题
你可以用PostgreSQL的TO_CHAR()函数格式化time字段,只保留小时和分钟部分,具体SQL语句如下:
SELECT id, TO_CHAR(time, 'HH24:MI') AS time_without_seconds FROM mytable;
格式参数说明:
'HH24':对应24小时制的小时(范围00-23),如果需要12小时制,换成'HH12',还可以加上' AM'或' PM'区分上下午,比如'HH12:MI AM'。'MI':对应分钟(范围00-59)。
如果希望结果仍保持TIME类型而非字符串,可以先用DATE_TRUNC()截断到分钟,再转回时间类型:
SELECT id, DATE_TRUNC('minute', time)::TIME AS time_without_seconds FROM mytable;
这种方式返回的结果还是TIME类型,秒数会被自动设为00。
内容的提问来源于stack exchange,提问作者Dimitrios Desyllas
相关产品推荐
相关产品推荐

