Om første spørgsmål:yderligere mellemrum skyldes month
og Day
mønstre er:
https://www.postgresql.org/docs/9.6/static /functions-formatting.html
Så hvis du vil fjerne disse mellemrum, kan du prøve noget som dette:
select trim(to_char(localtimestamp(0), 'Day'))||to_char(localtimestamp(0), ' DD ')||trim(to_char(localtimestamp(0), 'month'))||to_char(localtimestamp(0), ' YYYY')
--
Om italiensk sprog, kan der også være andre måder, men det burde også virke. Du kan hårdkodede italienske måneds- og dagnavne og "oversætte" dem med case
udtryk, noget som dette:
select
case
when trim(to_char(tstamp, 'Day')) = 'Monday' then 'Monday_in_italian'
when trim(to_char(tstamp, 'Day')) = 'Tuesday' then 'Tuesday_in_italian'
when trim(to_char(tstamp, 'Day')) = 'Wednesday' then 'Wednesday_in_italian'
-- another days here
end||
to_char(tstamp, ' DD ')||
case
when trim(to_char(tstamp, 'month')) = 'january' then 'January_in_italian'
when trim(to_char(tstamp, 'month')) = 'february' then 'February_in_italian'
-- another months here
end||
to_char(tstamp, ' YYYY')
as tstamp
from your_table
Bemærk, at du skal sætte alle 7-dages og alle 12-måneders navne i kasusudtryk, hvis du vil arbejde korrekt til enhver tid.
Eller endnu bedre, i case
udsagn, kan du bruge D
mønster for bestemme dag og MM
mønster for måned. Hvis du vil se en liste over tilgængelige mønstre, kan du følge linket, jeg har skrevet ovenfor.