代码之家  ›  专栏  ›  技术社区  ›  Emac

Postgres以分钟格式转换时间

  •  1
  • Emac  · 技术社区  · 6 年前

    我原以为这比现在容易,但我有一个表,里面有时间,格式如下:

    11:35:00 
    12:02:00 
    13:04:00
    

    11:35
    12:02
    13:04
    

    我在网上找到的每一个解决方案都说要用

    date_trunc('minute', time_here)

    它只是以它已经存在的秒格式返回时间。我要从格式中完全删除秒数。有办法把它改成HH:MM格式吗?谢谢

    1 回复  |  直到 6 年前
        1
  •  2
  •   Koen    6 年前

    如果这是为了显示目的,例如使用以下定义:

    create table t1 (tt timestamp);
    insert into t1 values ('2018-08-24 12:10:00');
    insert into t1 values ('2018-08-24 11:02:00');
    insert into t1 values ('2018-08-24 13:00:30');
    

    以下内容:

    select to_char(tt, 'HH24:MI') from t1;
    

    将产生:

    to_char
    12:20
    11:02
    13:00
    


    可以找到所有不同格式选项的文档 here