PostgreSQL TO_CHAR() 删除月份字段的填充

Posted

技术标签:

【中文标题】PostgreSQL TO_CHAR() 删除月份字段的填充【英文标题】:PostgreSQL TO_CHAR() Remove Padding on Month Field 【发布时间】:2019-08-12 11:47:13 【问题描述】:

希望轻松调整。我用谷歌搜索并没有找到任何关于此的内容。我正在使用 DBvis 客户端对 Postgres 数据库表运行查询。

我在 Oracle 和 PostgreSQL 查询中多次使用 to_char() 函数,但我想我从未注意到这种行为。

SELECT TO_CHAR(created_at, 'Month DD, YYYY') AS DATE_CREATED...;

在结果集中,月份字段被填充到 9 个空格,然后是日期和年份:

February  26, 2018
January   01, 2000
July      23, 2014
September 01, 2015
December  15, 2015
May       31, 2016

我现在从文档中知道这是 month 格式的工作方式,但是有没有办法在没有额外填充的情况下获得整个月份?我希望它看起来像这样:

February 26, 2018
January 01, 2000
July 23, 2014
September 01, 2015
December 15, 2015
May 31, 2016

每个日期后面都会有一个文本字段的内容,我认为如果月份和日期之间只有一个空格,它们会更容易阅读。

May 31, 2016 This is my text notes for this record这张唱片的日期部分不美观也不好看。

感谢任何提示。

【问题讨论】:

【参考方案1】:

使用“填充模式”FM - 与其名称相反 - 用空格填充值:

TO_CHAR(created_at, 'FMMonth DD, YYYY')

【讨论】:

非常感谢。这很好用。显然以前从未见过,但将来会记得。非常感激。 --jc

以上是关于PostgreSQL TO_CHAR() 删除月份字段的填充的主要内容,如果未能解决你的问题,请参考以下文章

PostgreSQL在转换后将字符误解为数字

Presto - 如何像 postgresql 一样替代 to_char?

postgresql to_char 德语格式的整数

使用 to_char 的 Postgresql 小数点

PostgreSQL - 从双精度字段中获取所有整数数字以用于 to_char 函数

PostgreSQL中有以下格式化函数: