> tgl@xxxxxxxxxxxxx wrote: > > Bryn Llewellyn <bryn@xxxxxxxxxxxx> writes: >> There could, so easily, have been three “to_char()” overloads for these >> three data types that honored the spirit of the “::text” typecast by >> rendering only what’s meaningful, despite what the template asks for. > > You can, of course, trivially make that so in your own database. > > =# create function to_char(date, text) returns text > language sql stable strict parallel safe > as 'select pg_catalog.to_char($1::timestamp without time zone, $2)'; > > =# select to_char(current_date, 'dd-Mon-yyyy TZH:TZM'); > to_char > -------------------- > 22-Oct-2021 +00:00 > (1 row) > > Regardless of whether the original choice not to have this variant > was intentional or an oversight, I'd be pretty loath to change it now > because of backwards compatibility. But Postgres is adaptable. Thanks, Tom. I’d also reached that same conclusion. But I won’t do that. Rather, I’ll advise myself and anyone who asks me to do what I just wrote in reply to David Johnston.