Om den första frågan:ytterligare mellanslag beror på month
och Day
mönster är:
https://www.postgresql.org/docs/9.6/static /functions-formatting.html
Så om du vill ta bort dessa mellanslag kan du prova något i stil med detta:
select trim(to_char(localtimestamp(0), 'Day'))||to_char(localtimestamp(0), ' DD ')||trim(to_char(localtimestamp(0), 'month'))||to_char(localtimestamp(0), ' YYYY')
--
Om italienska språket, kan det finnas andra sätt också, men detta borde också fungera. Du kan hårdkodade italienska månads- och dagnamn och "översätta" dem med case
uttryck, ungefär så här:
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
Observera att du bör sätta alla 7-dagars- och alla 12-månadersnamn i skiftlägesuttryck, om du vill att detta ska fungera korrekt när som helst.
Eller ännu bättre, i case
uttalanden kan du använda D
mönster för bestämma dag och MM
mönster för månad. Om du vill se listan över tillgängliga mönster kan du följa länken, jag har postat ovan.